<P>有一个问卷调查表:<BR>IP 问题 结果<BR>ip1 1 A<BR>ip1 2 B<BR>ip1 3 C<BR>ip2 1 B<BR>ip2 2 C<BR>ip2 3 C</P> <P>想生成的报表如下:<BR>IP 问题1 问题2 问题3 <BR>x1 A B C<BR>X2 B C C</P> <P>该如何实现呢?</P> <P>网上的解决方案都用case和sum来合并,但我的字段是varchar的,不是数字类型的,该如何实现呢?谢谢!</P>
2 回答
一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
tempa表: IP 问题 结果 ip1 1 A ip1 2 B ip1 3 C IP2 1 B IP2 2 C IP2 3 C code: declare @sql varchar(4000) set @sql = 'select IP ' select @sql = @sql + ',MAX(case 问题 when '''+问题+''' then 结果 end) [问题'+问题++']' from (select distinct 问题 from tempa ) as a select @sql = @sql+'into tempb from tempa group by ip ' --print @sql exec(@sql) select * from tempb 结果: IP 问题1 问题2 问题3 ip1 A B C IP2 B C C -----------------------完------------------
- 2 回答
- 0 关注
- 570 浏览
添加回答
举报
0/150
提交
取消