我有一份資料如下,我想求出各年分,產品與區域的銷售數量各是多少?
有甚麼好方法嗎???

登愣!!!用PIVOT可以將列轉成欄,真的很方便呢!!!
SQL語法如下:
drop TABLE dbo.kkProduct
CREATE TABLE dbo.kkProduct(
[訂單] INT NULL,
[產品代碼] VARCHAR(32) NULL,
[產品名稱] VARCHAR(32) NULL,
[區域代碼] INT NULL,
[區域名稱] VARCHAR(32) NULL,
[數量] INT NULL,
[年份] INT NULL,
);
INSERT dbo.kkProduct
VALUES
(1,'P01','雞排',100,'台北',10,2023),
(2,'P02','黑輪',100,'台北',20,2023),
(3,'P03','豆干',100,'台北',30,2022),
(4,'P01','雞排',300,'新竹',40,2022),
(5,'P02','黑輪',300,'新竹',50,2021),
(6,'P03','豆干',200,'桃園',60,2021),
(7,'P02','黑輪',100,'台北',70,2020),
(8,'P03','豆干',200,'桃園',80,2020),
(9,'P03','豆干',200,'桃園',50,2020)
SELECT * FROM dbo.kkProduct
SELECT *
FROM (
SELECT [年份],
X.value,
X.col
FROM [dbo].kkProduct C
CROSS APPLY --用CROSS APPLY來UNPIVOT超簡單
(
VALUES
(C.[產品名稱] ,C.[數量]),
(C.[區域名稱] ,C.[數量])
) X (col,value)
) S
PIVOT (
SUM([value]) FOR [col] IN (雞排,黑輪,豆干,台北,桃園,新竹)
) AS P;
結果如下圖所示:
馬上就呈現出來各年分,產品銷售數量與各區域的銷售數量了!!!真的很棒呢!!!

我們有30年以上的MSSQL使用經驗,有什麼問題,歡迎與我們聯繫!!
如果有什麼建議,也可以在下方留言處與我們分享,感謝您!!
手刀試用=>蝦皮對帳王
手刀試用=>康捷雲端ERP
相關文章
👉 MSSQL CHARINDEX (Transact-SQL) 查找字元在字串中的位置
👉 蝦皮對帳王-蝦皮對帳結果一覽表-為什麼要對帳?無對應???
👉 蝦皮對帳王-對帳原理分析-有訂單,有撥款だいじょうぶ(大丈夫);有訂單,沒撥款 歐NO~~~~~!!!
[蝦皮服務] 訂單完成後什麼時候能夠收到款項呢?
任何一套系統的撰寫與維護,都需要相對應的人力與雲端資料庫來維持。
感謝您願意使用我們的系統。
期待您的留言

Comments