Как найти среднее значение в столбце дат в SQL Server
У меня есть таблица из 5000 записей с столбцом даты.
Как найти среднее значение этих дат. Я пробовал AVG(datefield)
, но он говорит Operand data type datetime is invalid for avg operator
Ответы
Ответ 1
Если вы хотите только усреднить дату:
SELECT CAST(AVG(CAST(datefield AS INT)) AS DATETIME) FROM dates;
И если вы хотите рассмотреть время:
SELECT CAST(AVG(CAST(datefield AS FLOAT)) AS DATETIME) FROM dates;
См. fiddle для тестирования.
Ответ 2
CONVERT(DATETIME, AVG(CONVERT(FLOAT, datefield))) as [AverageDate]