sql 列转行

在统计分析的时候,我们往往会碰到通过某个字段分组要将一列值分类统计出来,如图:

select b.FSurvey, sum(b.manyi)as manyi,sum(b.jbmanyi)as jbmanyi,sum(b.btmanyi)as btmanyi,sum(b.bmanyi)as bmanyi from
( select FSurvey,
case when FSatisfactoryType ='满意' then aa else 0 end as manyi,
case when FSatisfactoryType ='基本满意' then aa else 0 end as jbmanyi,
case when FSatisfactoryType ='不太满意' then aa else 0 end as btmanyi,
case when FSatisfactoryType ='不满意' then aa else 0 end as bmanyi
from
(select FSurvey,FSatisfactoryType, count(*) aa from Credit_Prj_Investigate group by FSurvey,FSatisfactoryType)  a ) b group by b.FSurvey

posted @ 2009-06-24 15:27  草市江田  阅读(228)  评论(0)    收藏  举报