当前位置: 代码迷 >> Informix >> informix 分组统计 left join解决方案
  详细解决方案

informix 分组统计 left join解决方案

热度:8868   发布时间:2013-02-26 00:00:00.0
informix 分组统计 left join
SQL code
ID    数量     类别one    3      1one    6      2one    8      1two    2      1two    5      1--有table数据如此,--转化为下面这样格式的数据sql语句怎么写呢?ID    总和    类别为1总和    类别为2的总和one    17        11        6two    7        7        0--求总和select ID,count(数量) as 总和 from tablegroup by ID--求类别为1的和select ID,count(数量) as 类别为1的和 from tablewhere 类别=1group by ID--求类别为2的和select ID,count(数量) as 类别为2的和 from tablewhere 类别=1group 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
  相关解决方案