Re: [SQL ] 庫存數量分倉庫列表出問題
select Item,
       sum(case when WareHouse='X' then Quantity else 0 end) as X,
       sum(case when WareHouse='Y' then Quantity else 0 end) as Y
from table
group by Item
※ 引述《razer (還是一個人)》之銘言:
: (針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行)
:    資料庫名稱:
:         NetSuite, 算是Oracle底下的吧
:    資料庫版本:
: 內容/問題描述:
:         庫存資料表約略如下
:         Item    WareHouse       Quantity
:         A       X               2
:         A       Y               0
:         B       X               1
:         B       Y               3
:         C       X               4
:         希望用SQL讀出來可以讀成
:         Item    X       Y
:         A       2       0
:         B       1       3
:         C       4
:         感覺很簡單,寫成以下
:         select Item,X=case when WareHouse='X' then Quantity else NULL end,
:         Y=case when WareHouse='Y'then Quantity else NULL end from table
:         一如想像會形成
:         Item    X       Y
:         A       2
:         A               0
:         B       1
:         B               3
:         C       4
:         可是如果將SQL改成
:         select Item,sum(X=...),sum(Y=...) from table group by Item
:         (恕我將以上那一串case簡略)
:         會回報語法有錯
:         再將SQL改成
:         select Item,X=sum(...),Y=sum(...) from table group by Item
:         會直接回報failed to retrieve data,看來不是語法有錯?
:         想請問錯誤可能會發生在哪裡?或者我根本就用了不好的寫法?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.221.80.36
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1501754007.A.AFC.html
推
08/04 10:11, , 1F
08/04 10:11, 1F
→
08/04 10:12, , 2F
08/04 10:12, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Database 近期熱門文章
PTT數位生活區 即時熱門文章