SQL查询既选修了‘现代数据库技术’,又选修‘网络 *** 作系统’这两门课程的学生的详细信息。

SQL查询既选修了‘现代数据库技术’,又选修‘网络 *** 作系统’这两门课程的学生的详细信息。,第1张

方法一:采用嵌套查询,两层大嵌套,总体思路是在学号是选修了现代数据库技术的学生中找选修了网络 *** 作系统这门课的学生

select from student

where no in (select sno from sc

where cno=(select cno from course

where cname='网络 *** 作系统'))and

no in (select no from student

where no in (select sno from sc

where cno=(select cno from course

where cname='现代数据库技术')))

方法二,用连接查询应该简单点,我就不写了。嘿嘿

1.查询所有学生的学号、姓名、所在系

Select sno,sname,sdept

From student

2查询全体学生的学号、姓名、性别,年龄,系别的信息

Select

From student

3查询全体学生的姓名及其出生年份

Select sname,datadiff(year,sage,2010) as 出生年份

From student

4查询信息工程系全体学生的名单

Select sname

From student

Where sdept=’信息工程系’

5查询所有年龄在20岁以下的学生姓名以及年龄

Select sname,sage

From student

Where sage<20

6查询考试成绩不及格的学生的学号

Select sno

From score

Where grade<60

7查询年龄在20-25(包括20、25)之间的学生的姓名、系别和年龄

Select sname,sdept,sage

From student

Where sage>=20 and sage<=25

8查询不在软件系、网络系、也不在外语系学生的姓名和性别

select sname,sex

from student

where sdept <>'软件系、网络系、外语系'

9查询所有姓李且全名为三个汉字的学生的姓名、学号、和性别

select sname,sno,sex

from student

where sname like '李_ _'

10查询姓名中第二个字为'阳'字的学生的姓名

select sname

from student

where sname like '_阳%'

11查询信息工程系年龄在20岁以下的学生的姓名

select sname

from student

where sage<20 and sdept='信息工程系'

12查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列

select sno,grade

from score

where cno='3'

order by grade desc

13查询全体学生的学号、姓名等情况,结果按照所在系的升序排序,同一系的按年龄降序排列

select sno,sname

from student

order by sdept asc,sage desc

14统计学生总人数

select count() as 人数

from student

15查询选修课课程的学生人数

select count() as 人数

from score

16计算1号课程的学生平均分数

select avg(grade) 均分

from score

where cno='1'

17查询选修了1号课程的学生最高分数

select max(grade) 最高分

from score

where cno='1'

18求各课程号及相应的选修课人数

select cno,distinct(sno)

from score

group by cno

19查询选修了3门以上课程的学生号

select sno

from score

group by sno

having count(cno)>3

20查询选修2学分的课程且该课程的成绩在90分以上的所有学生的姓名

select sname

from student,course,score

where studentsno=scoresno and coursecno=scorecno and ccredit=2 and grade>90

21查询每个学生的学号、姓名、选修的课程号和成绩

select studentsno,sname,cno,grade

from student,score,course

where studentsno=scoresno and scorecno=coursecno

22查询所有选修了1号课程的学生姓名

select sname

from student,score

where studentsno=scoresno and scorecno='1'

23查询选修了课程名为“计算机信息管理”的学生的学号和姓名

select sno,sname

from student,course,score

where studentsno=scoresno and coursecno=scorecno

and cname='计算机信息管理'

希望能给你帮助

SELECT学号FROM选课表GROUPBY学号HAVINGCOUNT()>=3

拓展

SQL即结构化查询语言(StructuredQueryLanguage),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

SQL语句无论是种类还是数量都是繁多的,很多语句也是经常要用到的,SQL查询语句就是一个典型的例子,无论是高级查询还是低级查询,SQL查询语句的需求是最频繁的。

基本语句数据记录筛选:

sql="selectfrom数据表where字段名=字段值orderby字段名[desc]"(按某个字段值降序排列。默认升序ASC)

sql="selectfrom数据表where字段名like'%字段值%'orderby字段名[desc]"

sql="selecttop10from数据表where字段名=字段值orderby字段名[desc]"

sql="selecttop10from数据表orderby字段名[desc]"

sql="selectfrom数据表where字段名in('值1','值2','值3')"

sql="selectfrom数据表where字段名between值1and值2"

假设学生表为A,学号字段为id,姓名字段为name;

课程表为B,其中row_id为课程编号,stu_no为选修该门课的学生的学号

SQL:

SELECT Aid,Aname

FROM A

WHERE Aid NOT IN (SELECT DISTINCT Bstu_no FROM B)

以上就是关于SQL查询既选修了‘现代数据库技术’,又选修‘网络 *** 作系统’这两门课程的学生的详细信息。全部的内容,包括:SQL查询既选修了‘现代数据库技术’,又选修‘网络 *** 作系统’这两门课程的学生的详细信息。、设有一个学生—课程数据库,其中包括三个表:、怎样用sql语句查询选修了3门及以上课程的学生学号,姓名,选修的课程数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9459340.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存