[SQL ] 库存数量分仓库列表出问题

楼主: razer (还是一个人)   2017-08-03 17:37:25
(针对 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,看来不是语法有错?
想请问错误可能会发生在哪里?或者我根本就用了不好的写法?

Links booklink

Contact Us: admin [ a t ] ucptt.com