好吧,我正在嘗試從同一服務器上的兩個不同數據庫的兩個表中檢索數據,並在Reporting Services中創建圖表。我目前在ssrs r2 2008上。對於圖表,我需要按年份和月份進行排序,因爲我有不同的年份,並計算每月分類爲活動的名稱數量。我能夠按年份訂購這些信息,但這些月份總是按字母順序排列,而不是按照時間順序排列。我試圖刪除ssrs中的默認排序,但它仍然返回相同的結果,所以我相信排序必須在我的查詢中完成。我的查詢如下:要在SSRS圖表中以正確順序顯示月份
SELECT COUNT(c.name) AS name,
DATENAME(mm, c.expireson) AS Month,
DATENAME(yyyy, c.expireson) AS Year
FROM Database1.Table1 AS c
WHERE c.name = 'Active'
GROUP BY DATENAME(mm, c.expireson), DATENAME(yyyy, c.expireson)
UNION ALL
SELECT COUNT(d.name) AS name,
DATENAME(mm, d.expireson) AS Month,
DATENAME(yyyy, d.expireson) AS Year
FROM Database2.Table2 AS d
WHERE d.name = 'Active'
GROUP BY DATENAME(mm, d.expireson), DATENAME(yyyy, d.expireson)
任何幫助,如何我可以改變這個正確的月順序將不勝感激。提前致謝!
你甚至沒有ORDER BY子句。你爲什麼期望SQL Server以任何特定順序返回? [請在此處閱讀#3](http://blogs.sqlsentry.com/aaronbertrand/t-sql-tuesday-56-sql-server-assumptions/)以及有關'mm'和'yyyy',爲什麼要輸入'yyyy'而不是'YEAR'?請閱讀[this](http://blogs.sqlsentry.com/aaronbertrand/bad-habits-revival/)和[this](http://sqlblog.com/blogs/aaron_bertrand/archive/2011/09/20/20/)關於懶惰速記的壞習慣 - 使用簡寫 - 使用日期 - 時間操作.aspx)。 – 2014-10-28 19:14:16
我很抱歉沒有提到最初,但我確實有一個沒有按月排序的條款。我剛剛結束了我剛開始的最初查詢。 – Sabr786 2014-10-29 11:05:56