1. 程式人生 > >SQL中比較好的For xml 用法實例

SQL中比較好的For xml 用法實例

log ice AR dbo ID orm transport cat 商品

--包裹單號 入庫時間 交易號 商品分類 商品名稱 實付款
SELECT a.DeliveryCode AS ‘包裹單號‘,a.DomesticWarehouseInTime AS ‘入庫時間‘,a.TradeOrderID AS ‘交易號‘,
(SELECT TOP 1 CatalogName FROM [dbo].[TBD_ProductCatalog] WHERE CatalogID=b.ProductCatalogID AND (CatalogName<>NULL OR CatalogName<>‘‘) ) AS ‘分類名稱‘,
b.ProductName AS ‘產品名稱‘,b.ProductCatalogName AS ‘商品名稱‘,b.TotalItemActualPrice AS ‘總價‘ INTO #tempTable
FROM dbo.TWX_TransportFromMst a WITH (NOLOCK)
JOIN dbo.TWX_TransportFromDtl b WITH (NOLOCK) ON a.TransportFormMstID=b.TransportFormMstID
WHERE a.DeliveryCode IN
(

)
SELECT 包裹單號,入庫時間,交易號,SUM(總價) AS ‘總價‘,
(SELECT BB.分類名稱+‘,‘ FROM #tempTable BB WHERE BB.包裹單號=AA.包裹單號 FOR XML PATH(‘‘)) AS ‘分類名稱‘,
(SELECT BB.商品名稱+‘,‘ FROM #tempTable BB WHERE BB.包裹單號=AA.包裹單號 FOR XML PATH(‘‘)) AS ‘商品名稱‘,
(SELECT BB.產品名稱+‘,‘ FROM #tempTable BB WHERE BB.包裹單號=AA.包裹單號 FOR XML PATH(‘‘)) AS ‘產品名稱‘
FROM #tempTable AA
GROUP BY 包裹單號,入庫時間,交易號
DROP TABLE #tempTable

SQL中比較好的For xml 用法實例