我的SQL查詢:排序按年員額日期
SELECT DISTINCT
SUBSTRING(DATENAME(MONTH, PostDate), 1, 3) + '-' + CAST(YEAR(PostDate) AS VARCHAR(4)) AS PostArchive,
Posts = COUNT(*)
FROM
Post WHERE Verified=1
GROUP BY
SUBSTRING(DATENAME(MONTH, PostDate), 1, 3) + '-' + CAST(YEAR(PostDate) AS VARCHAR(4)),
YEAR(PostDate), MONTH(PostDate)
ORDER BY PostArchive
它給出這樣的結果:
PostArchive Posts ------------------------ Mar-2009 1 Mar-2010 1 May-2005 1 May-2011 1 May-2012 1 May-2013 1
但是我想日期(年)這樣的結果順序。
PostArchive Posts ------------------------ May-2005 1 Mar-2009 1 Mar-2010 1 May-2011 1 May-2012 1 May-2013 1
我搜索,發現this鏈接,但未能解決我的問題。
我嘗試:
ORDER BY CONVERT(DateTime, PostArchive,101) DESC
但它給我一個錯誤:
Invalid column name 'PostArchive'.
有沒有辦法做到這一點還是我在錯誤的way.Thanks。
嘗試CAST(PostArchive爲DATETIME) – Rob 2013-05-05 11:58:24
@Rob同樣的錯誤'無效列名...' – 2013-05-05 11:59:48