我需要订购月份名称,例如1月,2月,3月,4月......直到DEC,我正在使用它
datepart(m,Time)
但是我有来自2012年和2013年的数据。它显示了2012年1月,2013年1月,2012年2月,2013年2月的数据,但我还想订购年份,以便所有2012年的数据首先出现,然后是2013年的数据。< / p>
答案 0 :(得分:4)
这是对部分问题的部分解决方案,但通常您会使用:
ORDER BY YEAR(TimeColumn), DATEPART(m, TimeColumn)
答案 1 :(得分:0)
试试这个:
ORDER BY DatePart(y,time),DatePart(m,time)
答案 2 :(得分:0)
重复已经说过的话
SELECT '01 jan 2012' AS Dt INTO #tempDates
UNION
SELECT '01 jun 2012'
UNION
SELECT '10 oct 2012'
UNION
SELECT '01 jan 2013'
--1
SELECT Dt
FROM #tempDates
ORDER BY DatePart(YY,Dt),DatePart(m,Dt)
--2
SELECT Dt
FROM #tempDates
ORDER BY YEAR(Dt), MONTH(Dt)
--3
SELECT Dt
FROM #tempDates
ORDER BY YEAR(Dt), DatePart(m,Dt)