#sql #ms-access
#sql #ms-access
Вопрос:
как я могу вычесть эти два столбца, а затем найти их среднюю группировку по col3
:
col1, col2, col3
02:00:00, 04:00:00, 4
02:00:00, 05:00:00, 3
я хочу результат в этом формате: Hours:Minutes:Seconds
Спасибо
Ответ №1:
SELECT col3, Format(Avg([col2]-[col1]),"hh:mm:ss") AS TimeDiff
FROM Table1
GROUP BY col3;
Ответ №2:
Получаем разницу значений col1 и col2 в секундах
select col3, datediff("s", col2, col1) as diff_n_seconds from mytable
и сохраните это как запрос
Затем создайте запрос группы по первому запросу. Поместите в него среднее значение
select avg(diff_n_seconds), col3 from myquery groupby col3
и преобразуйте среднее значение обратно в формат времени с помощью функции format — например,
Format(int([FieldName]/3600),"00") amp; ":" amp; Format(Int(([FieldName]-(Int([FieldName]/3600)*3600))/60),"00") amp; ":" amp; Format((([FieldName] Mod 60)),"00")
Ответить с цитатой
(вы могли бы сделать это в том же запросе или создать новый на основе предыдущего)
Комментарии:
1. можно ли это сделать с помощью одного запроса .. я попробовал решение ur, но когда я пытаюсь создать группу с помощью, он говорит, что в инструкции FROM ошибка .. я хочу, чтобы это было в таком формате: Часы: Минуты: Секунды