使用 SQL Server 2005
我想要itemid, deliverydate, remainpurchphysical
水平显示。
目前我正在使用FOR XML PATH
并且这有效。
当结果是每个 itemid 的多个交货日期时,我想让它们显示得更好一些
[ITEMID] [DELIVERYDATE AND REMAINPURCH]
-----------------------------------------
[1234] [14/14/2014 25 | 15/15/2015 27 | 16/16/2016 28]
最好用 | 每个日期之间
这是当前代码
-select itemid, CONVERT(NVARCHAR, deliverydate, 103),remainpurchphysical
--from purchline where purchstatus =1 --and itemid = '00727-s'
SELECT
itemid
,deliverydates = STUFF(
(SELECT ' ' + CONVERT(NVARCHAR, deliverydate, 103)
FROM purchline b
WHERE b.itemid = a.itemid AND purchstatus = 1
ORDER BY deliverydate
FOR XML PATH('')), 1, 1, '')
,remainpurchphysical = STUFF(
(SELECT ' ' + CAST(CONVERT(Decimal(9,0), remainpurchphysical) AS VARCHAR)
FROM purchline b
WHERE b.itemid = a.itemid AND purchstatus = 1
ORDER BY deliverydate
FOR XML PATH('')), 1, 1, '')
FROM purchline a
WHERE purchstatus =1
GROUP BY itemid
ORDER BY itemid