1
我是SQL新手,在這裏面臨一個問題。我想我明白我可能需要做的事情,但不瞭解它的語法。基本上我每小時都有大量的計數,我需要把所有這些小時數統統加入到一起來顯示,而不是按小時計算,然後再計算整個天數的平均值。我還需要理清這些日子中的哪些是平日並排除週末......我認爲我已經正確地完成了,但是我可能在這方面是錯誤的。如果有更高效的方式,請告訴我!按日期時間列分組並保持平均值
SELECT DatePart(WEEKDAY, [EVENT_TIME]) as DayoftheWeek
,[EVENT_TIME]
,[COUNT]
,[CLASS_SCHEME_ID]
,[CLASS_NUM]
,[ERROR_CODE]
,[REC_ENTRY_TIME]
FROM [SAMPLE_DATA].[dbo].[651511]
WHERE [EVENT_TIME] >= '2009-01-01' AND DatePart(WEEKDAY, [EVENT_TIME]) >=2 AND DatePart(WEEKDAY, [EVENT_TIME]) <= 6
GROUP BY ,[EVENT_TIME]
,[COUNT]
,[CLASS_SCHEME_ID]
,[CLASS_NUM]
,[ERROR_CODE]
,[REC_ENTRY_TIME]
GO
我一直在閱讀我可能需要做的事情......關於鑄造的一些事情可能是?我不確定。
嗨傑森的任何非默認設置,感謝這個!這幾乎是正確的,但在第8行我一直在','(我相信它是DATEPART函數中的第一個''')出現語法錯誤,不知道這是爲什麼,並且在運行後出現 'SELECT @@ VERSION ' 我有SQL 2005正在運行...有人告訴我這是2008年。不知道有多少差異,使得。 – 2013-03-04 20:56:05
@MatthewPaxman:這個查詢確實有問題,但它們與逗號或無關版本的SQL Server(至少,一旦問題得到解決,查詢應該在SQL Server 2005中運行,就像在SQL Server 2008中一樣好)問題是:1)表名不分隔,2)WHERE中的DATEPART表達式在開始處缺少兩個開頭的括號,3)在查詢結尾處的反引號。查詢*中的GROUP BY列表也以逗號開頭。這可能是一個錯字,就像這個查詢中的倒退一樣,但它可能會意外地進入了您正在嘗試的查詢中。 – 2013-03-05 16:47:23