這似乎應該很容易,但我似乎無法弄清楚。我有一張表,其中包含Artifact
名稱和Modification_Date
等。我有一個查詢得到的月份文件修改計數。有幾個月沒有任何修改。由於我在Modification_Date
上查詢和分組,因此在沒有修改的情況下,這些月份沒有返回結果。理想情況下,在結果集中,我希望月份在那裏,0爲Quantity
。包括月度計數,包括不存在數據的月份
SELECT CONVERT(NVARCHAR(7), Modification_Date, 120) [Month],
COUNT(Artifact) as Quantity
FROM table
WHERE Modification_Date > DATEADD(month, -6, getdate())
GROUP BY CONVERT(NVARCHAR(7), Modification_Date, 120)
ORDER BY [Month] DESC
這讓我類似的結果:
Month Quantity
------- --------
2013-02 10
2012-11 12
2012-10 5
2012-09 29
正如你可以看到,2012年12月和2013年1月都沒有在結果集中。我想讓那些月份在那裏代表0 Quantity
,這樣我就可以在SQL報告條形圖中使用這些數據,並使這些月份以0值表示。目前在條形圖上它完全跳過了這幾個月。有沒有辦法在過去6個月內生成yyyy-mm
Month
列而不是僅僅使用Modification_Date
?
這很好用!非常感謝。你說得對,沒有必要使用NVARCHAR。我已經看到了一個使用它的日期轉換示例,並將其用於查詢中,而不用考慮它。 – sbrown23 2013-03-06 02:33:45