mdsk.net
当前位置:首页 >> sql 查询每个学生的基本信息以及所选修的课程情况 >>

sql 查询每个学生的基本信息以及所选修的课程情况

很简单的关联查询,SQL如下: select a.sn,a.sd,a.sex,a.sb,c.cn,c.teacher,b.grade from s as ajoin sc as bon a.sno=b.snojoin c as c on b.cno=c.cno如上是查询到所有学生的基本信息和选课情况还有成绩。

第一问:两个NOT EXISTS表示双重否定:没有一个选了课的学生没有选course表里的课程 select sname from student where not exists /*没有一个学生满足以下条件*/ (select * from course where not exists /*什么条件呢?没有选过Course表里的课...

我认为成绩表中如果有(学生编号,课程号)等字段的话,如下思想 select * from 成绩表 where 成绩表.课程号=1001 select * from 学生表 where 学生表.id=成绩表.学生表id 最终用子查询 select S.*,C.成绩 from 学生表 S,(select * form 成绩表 whe...

1)select a.Sname,c.Cname from Student a,SC b,Course c where a.Sno=b.Sno and b.Cno=c.Cno 2)没看到你的意思啊,查询课程名是‘数据库’的课程?

查询选修了全部课程的学生姓名:student 是学生表 course 是选课表 sc 是课程表select snamefrom studentwhere not exists(select *from coursewhere not exists(select *from scwhere sno =student.snoand cno=course.cno)

没人回答你啊:( SELECT S.SNo,S.NAME,SC.Num AS [选修课程数]FROM Student SJOIN (--查询选修3门以上的学生SELECT SNo,COUNT(*) AS NumFROM SCGROUP BY SNo -- 按学生分组HAVING COUNT(*) >= 3 -- 超过3门) SC ON SC.SNo = S.No

1:select sno(学生的学号) from sc(学生选课表)group by sno having count(*)>1 2:select s.sno,s.name from student swhere s.sno in(select sno from score scgroup by sc.cno having sum(sc.sno)>2 ) 3:应为三张表;学生表A 课程表B 选修...

首先头脑中有三点概念: 1 。 EXISTS 子查询找到的提交 NOT EXISTS 子查询中 找不到的提交 说明:不要去翻译为存在和不存在,把脑袋搞晕。 2 。 建立程序循环的概念,这是一个动态的查询过程。如 FOR循环 。 3 。 Exists执行的流程Exists首先执...

1、第一个sql:INNER JOIN……ON子句产生的连接,被称为显性连接。 2、第二个sql:WHERE子句中使用连接语句,在数据库语言中,被称为隐性连接。 3、WHERE和INNER JOIN产生的连接关系,没有本质区别,结果也一样。但是!隐性连接随着数据库语言的规...

select stu.name,course.*from stu,course,chice where stu.sid=chice.sid and course.c_id=choice.c_idand stu.name='张三' --这个地方输入你想查的人名,如果这句不写则查询全部

网站首页 | 网站地图
All rights reserved Powered by www.mdsk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com