[help]一个求最大值的sql 补充一下:那些列名是value,value1,value2,........value9,value10,value11这样的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个给你参考一下吧!! 表: 学生姓名 学科 成绩 利益 语文 85 张三 语文 69 利益 数学 59 张三 数学 85 利益 英语 85 张三 英语 69要求查询的结果为: 学生姓名 语文 数学 英语 利益 85 59 85 张三 69 85 69方法:declare @sql varchar(8000)set @sql = 'select 学生姓名'select @sql = @sql + ',sum(case 学科 when '''+学科+''' then 成绩 end) ['+学科+']' from (select distinct 学科 from 表) temselect @sql = @sql+' from 表 group by 学生姓名'exec(@sql)go--方法分析:A:主要的方法为这一段:select @sql = @sql + ',sum(case 学科 when '''+学科+''' then 成绩 end) ['+学科+']' from (select distinct 学科 from 表) temB:这一段的目的是把列内容中唯一值横向的列出并汇总 行改为列???不太现实吧?这个表中有1w都条数据阿,sql server可以有那么多列? 我的电脑为什么装sqlserver2000装不上啊? 如何从多个表查询到一个结果集? 关于某个字段存在历史记录问题 请问SQL查询语句执行效率的问题 job执行ssis包报错code:0x1000007。急急急 存储过程中可以使用参数做为数据库名吗? 求大侠帮忙! 如果判断字段是否允许为空? 怎么回事阿,刚才的帖子找不到了,请教sql mail的问题 急! 关于resin怎么配置,数据库是Sql Server? ====如何实现在windows中添加计划任务==== 插入的字段值中要求有单引号
学生姓名 学科 成绩
利益 语文 85
张三 语文 69
利益 数学 59
张三 数学 85
利益 英语 85
张三 英语 69要求查询的结果为: 学生姓名 语文 数学 英语
利益 85 59 85
张三 69 85 69方法:
declare @sql varchar(8000)
set @sql = 'select 学生姓名'
select @sql = @sql + ',sum(case 学科 when '''+学科+''' then 成绩 end) ['+学科+']'
from (select distinct 学科 from 表) tem
select @sql = @sql+' from 表 group by 学生姓名'
exec(@sql)
go--方法分析:
A:主要的方法为这一段:select @sql = @sql + ',sum(case 学科 when '''+学科+''' then 成绩 end) ['+学科+']' from (select distinct 学科 from 表) tem
B:这一段的目的是把列内容中唯一值横向的列出并汇总
不太现实吧?这个表中有1w都条数据阿,sql server可以有那么多列?