行列互换 这应该不是属于SQL的处理范围吧 ,应为SQL只是数据处理,而不是格式处理如果非要以这种形式选择出来,只能利用游标一行一列的插入到临时表! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 --示例--测试数据create table tb(学生 varchar(10),语文 int,数学 int,化学 int,地理 int,历史 int)insert tb select '张三',80,81,82,83,84union all select '李四',81,82,83,84,85go--查询处理declare @s1 varchar(8000),@s2 varchar(8000),@s3 varchar(8000),@s4 varchar(8000),@s5 varchar(8000)select @s1='''语文''',@s2='''数学''',@s3='''化学''',@s4='''地理''',@s5='''历史'''select @s1=@s1+',['+rtrim(学生)+']='+rtrim(语文) ,@s2=@s2+','+rtrim(数学) ,@s3=@s3+','+rtrim(化学) ,@s4=@s4+','+rtrim(地理) ,@s5=@s5+','+rtrim(历史)from tbexec('select '+@s1+'union all select '+@s2+'union all select '+@s3+'union all select '+@s4+'union all select '+@s5)go--删除测试drop table tb/*--测试结果 张三 李四 ---- ----------- ----------- 语文 80 81数学 81 82化学 82 83地理 83 84历史 84 85--*/ 请教高手帮忙,如何将0、1修改查询显示为字符 怎么填SQL SERVER 2005 的服务器名? 求一个语句~~ 菜鸟的问题:如何用语句删除SQL SERVER中一已经存在的数据库 推荐几本好书。 向前辈请教 挑战!!!你对SQL语句有多熟练 请教各位前辈老师 :关于2个库之间数据传递的问题(如何做成接口?) 用VPN连接到服务器,用 OLEDB 怎么用? 如何从数据库中读取时间的时候把时分秒去掉 一个排序的问题(求救) 如何制作PDF电子书
create table tb(学生 varchar(10),语文 int,数学 int,化学 int,地理 int,历史 int)
insert tb select '张三',80,81,82,83,84
union all select '李四',81,82,83,84,85
go--查询处理
declare @s1 varchar(8000),@s2 varchar(8000),@s3 varchar(8000),@s4 varchar(8000),@s5 varchar(8000)
select @s1='''语文''',@s2='''数学''',@s3='''化学''',@s4='''地理''',@s5='''历史'''
select @s1=@s1+',['+rtrim(学生)+']='+rtrim(语文)
,@s2=@s2+','+rtrim(数学)
,@s3=@s3+','+rtrim(化学)
,@s4=@s4+','+rtrim(地理)
,@s5=@s5+','+rtrim(历史)
from tb
exec('select '+@s1+'
union all select '+@s2+'
union all select '+@s3+'
union all select '+@s4+'
union all select '+@s5)
go--删除测试
drop table tb/*--测试结果 张三 李四
---- ----------- -----------
语文 80 81
数学 81 82
化学 82 83
地理 83 84
历史 84 85
--*/