【发布时间】:2014-08-27 11:32:12
【问题描述】:
我无法按时间顺序在 FOR XML Path 中订购季度和年份。虽然我订购它不起作用。有人可以告诉我哪里出错了
SELECT DISTINCT
LON.DATE
,STUFF((SELECT DISTINCT ',' + 'Q' + (COALESCE(CAST(LON1.QTR AS Varchar(10))+ '/ ', '') + + CAST(LON1.YR AS Varchar(10)))
FROM LOANTABLE LON1
WHERE LON.DATE = LON1.DATE
FOR XML PATH('')),1,1,'') AS QuarterAndYear
FROM
LOANTABLE LON
GROUP BY
LON.DATE
ORDER BY
QuarterAndYear
这是结果数据:
Date QuarterAndYear
2011-04-01 Q1/ 2008,Q3/ 2009,Q1/ 2010,Q2/ 2009,Q4/ 2009,Q2/ 2008,Q2/ 2010,Q3/ 2010,Q3/ 2008,Q4/ 2008,Q4/ 2010,Q1/ 2011,Q2/ 2011,Q1/
2009 2010-12-01 Q1/ 2010,Q2/ 2010,Q3/ 2010,Q4/
2010 2011-07-01 Q1/ 2010,Q3/ 2011,Q2/ 2010,Q3/ 2010,Q4/ 2010,Q1/ 2011,Q2/
2011 2012-01-09 Q1/ 2010,Q3/ 2011,Q2/ 2010,Q3/ 2010,Q4/ 2011,Q4/ 2010,Q1/ 2011,Q2/
2011 2011-07-08 Q1/ 2010,Q4/ 2009,Q2/ 2010,Q3/ 2010,Q4/ 2010,Q1/ 2011 –
【问题讨论】:
-
你能展示一些示例数据吗?
标签: sql-server sql-server-2008 sql-order-by