我有一個包含日期列的5000條記錄的表。如何在SQL Server中查找日期列中的平均值
如何查找這些日期的平均值。我試過AVG(datefield)
,但它說Operand data type datetime is invalid for avg operator
我有一個包含日期列的5000條記錄的表。如何在SQL Server中查找日期列中的平均值
如何查找這些日期的平均值。我試過AVG(datefield)
,但它說Operand data type datetime is invalid for avg operator
如果您只想平均日期:
SELECT CAST(AVG(CAST(datefield AS INT)) AS DATETIME) FROM dates;
如果你要考慮時間:
SELECT CAST(AVG(CAST(datefield AS FLOAT)) AS DATETIME) FROM dates;
見fiddle到測試。
CONVERT(DATETIME, AVG(CONVERT(FLOAT, datefield))) as [AverageDate]
http://www.bennadel.com/blog/175-Ask-Ben-Averaging-Date-Time-Stamps-In-SQL.htm – Dan
您是否嘗試將其轉換爲浮點型然後使用AVG?我認爲它可能有效。 –