企业名称  状态
------------
名称1    0
名称2    0
名称2    2
名称3    1
名称4    1
名称1    2
名称2    0求:各企业在不同“状态”下合计数,如
企业名称   状态(0)  状态(1)  状态(2)
------------------------------------

解决方案 »

  1.   

    只有三种状态?select 企业名称,sum(decode(状态,0,1,0)) 状态0,
    sum(decode(状态,1,1,0)) 状态1,
    sum(decode(状态,2,1,0)) 状态2 from tbname group by 企业名称;
      

  2.   

    谢谢,求某种状态占百分比,SQL如何写???
      

  3.   

    用group by rollup(企业名称,状态)
      

  4.   

    select 企业名称,sum(decode(状态,0,1,0))/count(*) 状态0,
    sum(decode(状态,1,1,0))/count(*) 状态1,
    sum(decode(状态,2,1,0))/count(*) 状态2 from tbname group by 企业名称;