sql group by 结果集横向显示 便于建视图

1.sql 查询 group by 结果集横向显示,方便建视图,如表数据为:

- name         qulify
- apple         A
- banana         B
- orange        A
- pear            B   
- strawberry    C

group by qulify ,结果集为:

  • A B C
  • 2 2 1

实现方法如下:

SELECT  
   sum(case when qulify='A' then cc else 0 END) A,
   sum(case when qulify='B' then cc else 0 END) B,     
   sum(case when qulify='C' then cc else 0 END) C 
  FROM (select qulify,count(*) cc  from table  group by qulify)

得到结果如下:

- A      B      C
- 2      2      1