一个简单的SQL数据查询,大家来帮帮忙,只有10分了,倾囊而出..在线等,解决就给分
id cj_name cj_xh cj_cj cj_kmid cj_bid
1 张三 200701 88 语文 1
2 张三 200701 79 政治 1
3 张三 ...... 60 数学 1
4 张三 200701 58 英语 1
5 李四 200703 99 语文 1
6 李四 200703 35 英语 1
7 张三 200701 75 美术 1
8 王五 200704 90 政治 2
比如现在我需要查询bid为1的学生成绩,这样来输出
姓名 学号 语文 数学 英语 政治 美术
张三 200701 88 60 58 79 75
李四 ………………………………………………
上面对应的字段应该很清楚,都是拼音的第一个字母
查询一个班的学生~
------解决方案--------------------select cj_name as 姓名,Cj_xh as 学号,
语文=max(case cj_kmid when '语文 ' then cj_cj end),
数学=max(case cj_kmid when '数学 ' then cj_cj end),
英语=max(case cj_kmid when '英语 ' then cj_cj end),
政治=max(case cj_kmid when '政治 ' then cj_cj end),
美术=max(case cj_kmid when '美术 ' then cj_cj end)
from
表
group by cj_name,cj_xh