select dw, sum(case zc when 初级 then value else 0 end) 初级, sum(case zc when 副高职 then value else 0 end) 副高职, sum(case zc when 正高职 then value else 0 end) 正高职 from yourtable group by dw,初级,副高职,正高职
select dw, (case zc when 初级 then value else 0 end) 初级, (case zc when 副高职 then value else 0 end) 副高职, (case zc when 正高职 then value else 0 end) 正高职 from table group by dw
首先得到表中所以zc不同的字段,然後用它來建立表結構,在生成表結構的同時亦生成數據.
搜索一理以前的貼子有很多此類型的問題與答案.
如: http://expert.csdn.net/Expert/topic/1202/1202671.xml?temp=2.355593E-02
思 路.你只要形成的语句为.
select 类型, 初级, 副高职, 正高职...加...加.union第一临床医学院 105
。需要你通过程序转换,连接sql字符。
sum(case zc when 初级 then value else 0 end) 初级,
sum(case zc when 副高职 then value else 0 end) 副高职,
sum(case zc when 正高职 then value else 0 end) 正高职
from yourtable
group by dw,初级,副高职,正高职
(case zc when 初级 then value else 0 end) 初级,
(case zc when 副高职 then value else 0 end) 副高职,
(case zc when 正高职 then value else 0 end) 正高职
from table
group by dw