D
ddw
Unregistered / Unconfirmed
GUEST, unregistred user!
表a
全部物品
1
2
3
4
:
100
表b
全部地区
d1
:
d40
表c
物品 数量 月份 地区
3 2 5 d2
1 4 12 d1
3 3 2 d40
:
:
现在要查旬c表的数量,形成如下格式
表d
物品 d1地区数量 d2地区数量 …… d40地区数量
1 8 0 …… 20
2 4 5 0
3
:
98
99
100
我曾经问过别人,别人告诉我
SELECT 物品,
SUM(CASE 地区 WHEN 'd1' THEN 数量 ELSE 0 END) AS d1,
SUM(CASE 地区 WHEN 'd2' THEN 数量 ELSE 0 END) AS d2,
SUM(CASE 地区 WHEN 'd3' THEN 数量 ELSE 0 END) AS d3,
...
SUM(CASE 地区 WHEN 'd40' THEN 数量 ELSE 0 END) AS d40
FROM C表
WHERE 月份=8
GROUP BY 物品
出来结果,但是和我的要求差了一点点
结果如下
物品 d1地区数量 d2地区数量 …… d40地区数量
3 6 0 9
10 0 ……
现在我想要得到d表的结构,即物品的顺序要和表a中一一对应,即1-100的所有物品都要列在d表中。
请参看表d。
我还应该加点什么语句???
全部物品
1
2
3
4
:
100
表b
全部地区
d1
:
d40
表c
物品 数量 月份 地区
3 2 5 d2
1 4 12 d1
3 3 2 d40
:
:
现在要查旬c表的数量,形成如下格式
表d
物品 d1地区数量 d2地区数量 …… d40地区数量
1 8 0 …… 20
2 4 5 0
3
:
98
99
100
我曾经问过别人,别人告诉我
SELECT 物品,
SUM(CASE 地区 WHEN 'd1' THEN 数量 ELSE 0 END) AS d1,
SUM(CASE 地区 WHEN 'd2' THEN 数量 ELSE 0 END) AS d2,
SUM(CASE 地区 WHEN 'd3' THEN 数量 ELSE 0 END) AS d3,
...
SUM(CASE 地区 WHEN 'd40' THEN 数量 ELSE 0 END) AS d40
FROM C表
WHERE 月份=8
GROUP BY 物品
出来结果,但是和我的要求差了一点点
结果如下
物品 d1地区数量 d2地区数量 …… d40地区数量
3 6 0 9
10 0 ……
现在我想要得到d表的结构,即物品的顺序要和表a中一一对应,即1-100的所有物品都要列在d表中。
请参看表d。
我还应该加点什么语句???