- SQL code
ID 数量 类别 one 3 1 one 6 2 one 8 1 two 2 1 two 5 1 --有table数据如此, --转化为下面这样格式的数据sql语句怎么写呢? ID 总和 类别为1总和 类别为2的总和 one 17 11 6 two 7 7 0 --求总和 select ID,count(数量) as 总和 from table group by ID --求类别为1的和 select ID,count(数量) as 类别为1的和 from table where 类别=1 group by ID --求类别为2的和 select ID,count(数量) as 类别为2的和 from table where 类别=1 group by ID 上面三个sql语句怎么连到一块呢,或创建个视图?informix7.03版本
------解决方案--------------------
因为Informix 7.03 不支持case,case 是从7.3开始新增的特性
select A.ID,count(A.数量) as 总和,
(SELECT count(数量) FROM TT WHERE ID=A.ID AND 类别=1),
SELECT count(数量) FROM TT WHERE ID=A.ID AND 类别=2)
from tT A GROUP BY A.ID