一道sql笔试题 - MS-SQL Server / 基础类
一道sql笔试题
悬赏分:0 - 解决时间:2009-11-3 12:01
姓名 课程 成绩
张三 语文 100
张三 数学 60
张三 英语 80
李四 语文 90
李四 数学 70
李四 英语 80
将其变成
姓名 语文 数学 英语
这种形式输出,用sql语句实现
转的邹老大的
http://blog.csdn.net/sql_lover/archive/2010/05/04/5556828.aspx
SQL code:
select 姓名,
max(case when 课程='语文' then 成绩 else 0 end) as 语文,
max(case when 课程='数学' then 成绩 else 0 end) as 数学,
max(case when 课程='英语' then 成绩 else 0 end) as 英语
from tb
group by 姓名
额,应该是dawugui的 呵呵~~~~
用max只能取最大值一个,我想要在把其他的值全取出来
楼主是sql 2000 还是 2005 呢?
如果是2005的话可以自己使用pivot和unpivot来处理。。
sql 2000
本来就只有一个值
相关问答:
执行的顺序:
1)文件浏览框(选择文件使用)
选择好文件后
点击一个导入按钮的时候 ,把上面上传框里的csv文件以一个ID为文件名,上传到**/**文件夹下
2)读取这个文件夹下的csv的文件,转换成sql
3 ......
现在有两张表:文章主表A(articleId,articleTitle),文章评论表B(commentId,articleId,commentTitle)
现在我想实现这样的功能:列出文章列表,其中每篇文章标题下面列出此文章的前2个文章评论,请问sql语句怎么写啊 ......
如何在SQL2005中设定定时作业,比如说定时清理某些表的数据,
或者是定时的将某些表的数据导出excel!
在线等待,急急急,最好是详细步骤!
之前我做的作业有点问题!
帮UP
参考:http://hi.baidu.com/toiota ......
tab1 字段:billdate,goodsid,incount,inmoney,outcount,outmoney,endprice,endcount,endamt
tab2 字段:goodsid,goodskind(商品类型)
tab3 字段:goodskind(商品类型),kindname
结果:
得到商品类型在一段时间 ......
字段1,字段2.....字段N,Status,ParentID
1,Name1....test1,1,99
1,Name1....test1,3,99
1,Name2....test2,1,101
1,Name2....test2,3,101
1,Name3....test3,2,101
1,Name1....test1,4,101
想要的结果是:
1,Na ......