select StudentInfo.Id, StudentInfo.Sname,ClassInfo.Cname ,Score.Number as '成绩'
from StudentInfo
inner join ClassInfo on StudentInfo.Cid=ClassInfo.Id
inner join Score on Score.Uid=StudentInfo.Id
inner join Subject on Subject.Id=Score.Sid
where StudentInfo.Id=1
StudentInfo.Id是学员ID StudentInfo.Sname是学员名称 ClassInfo.Cname 是班级名称(是个外键表)Score.Number 改学员的成绩(包括了 语文,数学,外语,综合 等科目) , 总共有4个表 1,学员表,2,班级表,3成绩表,4,科目表(包括了 语文,数学,外语,综合)
试用上面语句查询结果如图:
因为有4个科目就查询出了4条数据,
请问:要怎么写 查询结果就只有一条数据,就包括了 ID,学员名称,班级名称,语文成绩,数学成绩,外语成绩,综合成绩? 就显示一条数据,该怎么写呢,请高手指教!
首先添加一个课程表Course:
假设:Id=1,Sname=语文;Id=2,Sname=数学;Id=3,Sname=外语;Id=4,Sname=综合;
select StudentInfo.Id, StudentInfo.Sname,ClassInfo.Cname ,
(select number from score where Sid=1) as 语文成绩,
(select number from score where Sid=2) as 数学成绩,
(select number from score where Sid=3) as 外语成绩,
(select number from score where Sid=4) as 综合成绩
from StudentInfo
inner join ClassInfo on StudentInfo.Cid=ClassInfo.Id
inner join Score on Score.Uid=StudentInfo.Id
inner join Subject on Subject.Id=Score.Sid
where StudentInfo.Id=1
看这页随意的回答,你的问题和这个问是一样的
http://wenwen.soso.com/z/q2
select top 1 StudentInfo.Id, StudentInfo.Sname,ClassInfo.Cname ,Score.Number as '成绩'
from StudentInfo
inner join ClassInfo on StudentInfo.Cid=ClassInfo.Id
inner join Score on Score.Uid=StudentInfo.Id
inner join Subject on Subject.Id=Score.Sid
where StudentInfo.Id=1
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息