declare
cursor cr is select distinct aihao from f;
v_aihao varchar2(10);
v_sql varchar2(500);
begin
v_sql := 'select country ';
open cr;
fetch cr into v_aihao;
while cr %found loop
v_sql:=v_sql||' , sum(case aihao when ''' || v_aihao || ''' then renshu else 0 end) as ' || v_aihao;
fetch cr into v_aihao;
end loop;
v_sql:=v_sql || ' from F group by country' ;
execute immediate v_sql;
end;要的结果是:
COUNTRY 斗地主 读书 玩火
-------------------- --------- --------- ---------
美国 0 20 40
南非 30 90 0
中国 40 50 10
用C#怎么写?
cursor cr is select distinct aihao from f;
v_aihao varchar2(10);
v_sql varchar2(500);
begin
v_sql := 'select country ';
open cr;
fetch cr into v_aihao;
while cr %found loop
v_sql:=v_sql||' , sum(case aihao when ''' || v_aihao || ''' then renshu else 0 end) as ' || v_aihao;
fetch cr into v_aihao;
end loop;
v_sql:=v_sql || ' from F group by country' ;
execute immediate v_sql;
end;要的结果是:
COUNTRY 斗地主 读书 玩火
-------------------- --------- --------- ---------
美国 0 20 40
南非 30 90 0
中国 40 50 10
用C#怎么写?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货