Как правильно написать запрос. MySQL - SUM - GROUP BY
Смысл БД в хранении информации, по проведённым с курсантами занятиям. Инструктор провёл занятие с курсантом и БД вносится: ... дата, время начала, время окончания, общее время ... Инструктор может провести занятие сразу с двумя курсантами, но в БД вносится запись для каждого курсанта. Получается, что 2022-08-18 мы имеем две записи с одинаковым временем начала и конца. В сводной таблице надо вывести итоги и просуммировать total_time для одного инструктора, чтобы понять, сколько он начитал часов, например за месяц, и так как он проводил занятие 1 час, то эти две записи нужно сгруппировать, чтобы получить правильное время работы инструктора за выбранный период. Результатом запроса должно быть лишь одно число, можно в секундах, я уже разберусь. Записей в БД порядка 20 тыс.
SELECT date,time_start_taxi, SUM( TIME_TO_SEC( total_time ) ) AS sum_total_time FROM tor_mission_complete GROUP BY date AND time_start_taxi
Ответ БД:
Ответы (1 шт):
На нынешней структуре это будет
SELECT инструктор, дата, SUM(длительность)
FROM ( SELECT DISTINCT инструктор, дата, начало, длительность
FROM таблица ) AS алиас
GROUP BY 1, 2

