0
以下のクエリは、代わりに私が出しは次のようにする必要がありますので、月によって各製品の合計数量を取得したいというの月
Service Date Product1 Product2
01/Jun/2015 1 3
02/Jun/2015 2 5
01/Aug/2015 2 5
02/Aug/2015 2 5
次の結果を返すには、製品の合計数量を取得します。
Service Date Product1 Product2
Jun/2015 3 8
Aug/2015 4 10
クエリ
DECLARE @cols AS nvarchar(max),
@query AS nvarchar(max)
SELECT
@cols = STUFF((SELECT
',' + QUOTENAME(Product_Name)
FROM dbo.Store INNER JOIN dbo.Servicelist ON dbo.Servicelist.Pro_ID = dbo.Store.Pro_ID
where CatID='2'
GROUP BY Product_Name
ORDER BY Product_Name
FOR xml PATH (''), TYPE)
.value('.', 'NVARCHAR(MAX)'), 1, 1, '')
SET @query = 'SELECT Replace(CONVERT(NVARCHAR, Service_Date, 126), '' '', ''/'') AS [Service Date],' + @cols + ' from (select Service.Service_Date, Store.Product_Name, Servicelist.ProductQty FROM dbo.Service INNER JOIN dbo.Servicelist ON dbo.Service.Service_ID = dbo.Servicelist.Service_ID INNER JOIN dbo.Store ON dbo.Servicelist.Pro_ID = dbo.Store.Pro_ID) x pivot (SUM(ProductQty) for Product_Name in (' + @cols + ')) p '
EXECUTE (@query);
'サービスDate'のデータ型が何であると
を交換?どのバージョンの 'Sql Server'を使用していますか? –
タイプは日付 – Ayman
どのバージョンのSQL SERVER? 2008,2012? –