初學者SQL問題:不能按年分組
我正在嘗試按年份分組,並且我得到了有趣的結果。我使用SQL Server 2008的
首先,我想
select count(applicationkey) , approveddate from ida.applications group by approveddate
要獲得通過最新的應用程序的計數。然而,我感興趣的應用程序通過一年的日子代替,所以我嘗試
select count(applicationkey) , approveddate from ida.applications group by year(approveddate)
當我這樣做,我得到一個錯誤信息-Column「ida.applications.ApprovedDate」在選擇列表中無效因爲它不是在聚合函數或GROUP BY包含clause.-
但是,如果我這樣做,我得到的結果
select count(applicationkey) from ida.applications group by year(approveddate)
我得到的結果。它只是我希望能夠看到哪一年符合哪個計數,這是我因爲某些原因而無法完成的。有誰知道我爲什麼有這個問題?
您必須在您所查詢的任何非聚集列組。如果你按年份分組,那麼你需要選擇'year(approveddate)'而不是'approvedate' – LittleBobbyTables 2014-09-26 14:57:17
Ravi,一個普通的問題提示提示:你可以包括諸如platform(sql-server)和version sql-server-2008)作爲標籤在你的問題。你在你的問題中提到了它們,這已經讓你領先於很多提問者,但首選的方法是將它們作爲標籤包含在內。您可以通過點擊原始問題下的「編輯」一詞來完成此操作:) – AHiggins 2014-09-26 15:10:03