Я пытаюсь научить себя SQL. Я учусь плавать, прыгая в глубокий конец, как парень, и я думаю, что я тону. В настоящее время я мало что знаю о формировании команд SQL, кроме базовых команд Select, From, Where и Group By. Я собираюсь посмотреть некоторые классы удеми, чтобы помочь, но если у меня есть пример из реального мира, я могу помочь обосновать некоторые концепции для себя, я выучу намного лучше.
У меня есть некоторые данные в таблице, когда человек включается и выключается в течение дня. Я хочу сжать весь день до одного времени, одного времени и общего количества часов дня.
Так что я пока мало что знаю о том, как все части sql работают вместе, чтобы сформировать запрос, и я пока не понимаю порядок их выполнения.
Пока все, что я могу сделать, это выбрать столбцы из таблицы и упорядочить их по дате и времени.
Например, у меня есть такая таблица:
select Empl_id, AdjClockInDate, AdjClockInTime, AdjClockOutDate, AdjClockOutTime, TotAdjTime
From AttendDet
Where EmplCode = '33'
Order By EmplCode Asc, SearchDate desc, AdjClockInTime Asc
empl_id AdjClockInDate AdjClockInTime AdjClockOutDate AdjClockOutTime TotAdjTime
33 07/01/2019 07:00 07/01/2019 12:00 5
33 07/01/2019 12:00 07/01/2019 12:30 .5
33 07/01/2019 12:30 07/01/2019 17:50 5
И что я хотел получить, это сгруппировать общие даты и empl_id вместе в один день для просмотра, например:
empl_id AdjClockInDate AdjClockInTime AdjClockOutDate AdjClockOutTime TotAdjTime
33 07/01/2019 07:00 07/01/2019 17:50 10
Игнорирование периода перерыва в 0,5 часа и суммирование часов без перерыва.
Я думаю, что мне нужно сначала отсортировать их по датам и времени, затем получить первую запись часов в столбцах и получить последнюю запись для столбцов часов.
Это примерно столько, сколько я могу сказать, поскольку я действительно не знаю, что я могу использовать или как использовать это для команд sql.
Я надеюсь, что, получив решение этой проблемы, я попытаюсь поработать над ней, очень поможет мне понять, пока я прохожу курсы, чтобы я мог установить мозговую связь с чем-то материальным.
Прямо сейчас я знаю, что это над моей головой, но, увидев и разобрав его и поняв части, я очень помогу.