目录

设教学数据库Education有三个关系:

1、查所有年龄在20岁以下的学生姓名及年龄。

2、查考试成绩有不及格的学生的学号。

3、查所年龄在20至23岁之间的学生姓名、系别及年龄。

4、查计算机系、数学系、信息系的学生姓名、性别。

5、查既不是计算机系、数学系、又不是信息系的学生姓名、性别。

6、查所有姓“刘”的学生的姓名、学号和性别。

7、查姓“上官”且全名为3个汉字的学生姓名。

8、查所有不姓“张”的学生的姓名。

9、查DB_Design课程的课程号。

10、查缺考(即GRADE没有赋值)的学生的学号和课程号。

11、查年龄为空值的学生的学号和姓名。

12、查计算机系20岁以下的学生的学号和姓名。

13、查计算机系、数学系、信息系的学生姓名、性别。

14、查询选修了C3课程的学生的学号和成绩,其结果按分数的降序排列。

15、查询全体学生的情况,查询结果按所在系升序排列,对同一系中的学生按年龄降序排列。

16、查询学生总人数。

17、查询选修了课程的学生人数。

18、计算选修了C1课程的学生平均成绩。

19、查询学习C3课程的学生最高分数。

20、查询各个课程号与相应的选课人数。

21、查询计算机系选修了3门以上课程的学生的学号。

22、求基本表S中男同学的每一年龄组(超过50人)有多少人?要求查询结果按人数升序排列,人数相同按年龄降序排列。

23、查询每个学生及其选修课程的情况。

24、查询选修了C2课程且成绩在90分以上的所有学生。

25、查询每个学生选修的课程名及其成绩。

26、统计每一年龄选修课程的学生人数。

27、查询选修了C2课程的学生姓名。

28、查询与“张三”在同一个系学习的学生学号、姓名和系别。

29、查询选修课程名为“数据库”的学生学号和姓名。



设教学数据库Education有三个关系:

学生关系S(SNO,SNAME,AGE,SEX,SDEPT);

学习关系SC(SNO,CNO,GRADE);

课程关系C(CNO,CNAME,CDEPT,TNAME).

查询问题:

1、查所有年龄在20岁以下的学生姓名及年龄。

SELECT SNAME,AGE
FROM S
WHERE AGE<20

2、查考试成绩有不及格的学生的学号。

SELECT DISTINCT SNO
FROM SC
WHERE GRADE<60

3、查所年龄在20至23岁之间的学生姓名、系别及年龄。

SELECT SNAME,SDEPT,AGE
FROM S
WHERE AGE BETWEEN 20 AND 23

4、查计算机系、数学系、信息系的学生姓名、性别。

SELECT SNAME,SEX
FROM S
WHERE SDEPT IN ('CS','MA','IS')

5、查既不是计算机系、数学系、又不是信息系的学生姓名、性别。

SELECT SNAME,SEX
FROM S
WHERE SDEPT NOT IN ('CS','MA','IS')

6、查所有姓“刘”的学生的姓名、学号和性别。

SELECT SNAME,SNO,SEX
FROM S
WHERE SNAME LIKE '刘%'

7、查姓“上官”且全名为3个汉字的学生姓名。

SELECT SNAME
FROM S
WHERE SNAME LIKE '上官_'

8、查所有不姓“张”的学生的姓名。

SELECT SNAME
FROM S
WHERE SNAME NOT LIKE '张%'

9、查DB_Design课程的课程号。

SELECT CNO
FROM C
WHERE CNAME = 'DB_Design'

10、查缺考(即GRADE没有赋值)的学生的学号和课程号。

SELECT SNO,CNO
FROM SC
WHERE GRADE IS NULL

11、查年龄为空值的学生的学号和姓名。

SELECT SNO,SNAME
FROM S
WHERE AGE IS NULL

12、查计算机系20岁以下的学生的学号和姓名。

SELECT SNO,SNAME
FROM S
WHERE SDEPT = 'CS' AND AGE<20

13、查计算机系、数学系、信息系的学生姓名、性别。

SELECT SNAME,SEX
FROM S
WHERE SDEPT IN ('CS','MA','IS')

14、查询选修了C3课程的学生的学号和成绩,其结果按分数的降序排列。

SELECT SNO,GRADE
FROM SC
WHERE CNO = 'C3'
ORDER BY GRADE DESC

15、查询全体学生的情况,查询结果按所在系升序排列,对同一系中的学生按年龄降序排列。

SELECT *
FROM S
ORDER BY SDEPT ASC,AGE DESC

16、查询学生总人数。

SELECT COUNT(*)
FROM S

17、查询选修了课程的学生人数。

SELECT COUNT(DISTINCT SNO)
FROM SC

18、计算选修了C1课程的学生平均成绩。

SELECT AVG(GRADE)
FROM SC
WHERE CNO = 'C1'

19、查询学习C3课程的学生最高分数。

SELECT MAX(GRADE)
FROM SC
WHERE CNO = 'C3'

20、查询各个课程号与相应的选课人数。

SELECT CNO,COUNT(SNO)
FROM SC
GROUP BY CNO

21、查询计算机系选修了3门以上课程的学生的学号。

SELECT SNO
FROM S,SC
WHERE SDEPT = 'CS' AND S.SNO = SC.SNO
GROUP BY SNO
HAVING COUNT(*)>3

22、求基本表S中男同学的每一年龄组(超过50人)有多少人?要求查询结果按人数升序排列,人数相同按年龄降序排列。

SELECT AGE,COUNT(SNO)
FROM S
GROUP BY AGE
HAVING COUNT(*)>50
ORDER BY COUNT(*) ASC,AGE DESC

23、查询每个学生及其选修课程的情况。

SELECT S.SNO,SNAME,AGE,SEX,SDEPT,CNO,GRADE
FROM S,SC
WHERE S.SNO = SC.SNO

24、查询选修了C2课程且成绩在90分以上的所有学生。

SELECT SNO
FROM SC
WHERE CNO = 'C2' AND GRADE >90

25、查询每个学生选修的课程名及其成绩。

SELECT CNAME,GRADE
FROM SC
GROUP BY SNO

26、统计每一年龄选修课程的学生人数。

SELECT AGE,COUNT(DISTINCT S.SNO)
FROM S,SC
WHERE S.SNO = SC.SNO
GROUP BY AGE

27、查询选修了C2课程的学生姓名。

连接查询

SELECT SNAME
FROM S,SC
WHERE CNO = 'C2' AND S.SNO = SC.SNO

嵌套查询

SELECT SNAME
FROM S
WHERE SNO IN(SELECT SNOFROM SCWHERE CNO = 'C2')

28、查询与“张三”在同一个系学习的学生学号、姓名和系别。

嵌套查询

SELECT SNO,SNAME,SDEPT
FROM S
WHERE SDEPT IN(SELECT SDEPTFROM SWHERE SNAME = '张三')

自身连接

SELECT SNO,SNAME,SDEPT
FROM S S1, S S2
WHERE S1.SDEPT = S2.SDEPT AND S2.SNAME = '张三'

29、查询选修课程名为“数据库”的学生学号和姓名。

连接查询

SELECT SNO,SNAME
FROM S,SC,C
WHERE CNO = '数据库' AND S.SNO = SC.SNO AND C.CNO = SC.CNO

嵌套查询

SELECT SNO,SNAME
FROM S
WHERE SNO IN(SELECT SNOFROM SCWHERE CNO IN(SELECT SNOFROM CWHERE CNAME = '数据库'))

数据库SQL查询习题2:设教学数据库Education有三个关系相关推荐

  1. 视频教程-数据库SQL查询,最佳案例讲解-SQL Server

    数据库SQL查询,最佳案例讲解 教学风格独特,以学员视角出发设计课程,难易适度,重点突出,架构清晰,将实战经验融合到教学中.讲授技术同时传递方法.得到广大学员的高度认可. 王进 ¥19.00 立即订阅 ...

  2. java查询学号数据库_数据库SQL查询语句练习题 PDF 下载

    主要内容: 设教学数据库Education有三个关系: 学生关系S(SNO,SNAME,AGE,SEX,SDEPT):学习关系SC(SNO,CNO,GRADE):课程关系C(CNO,CNAME,CDE ...

  3. Python学习日志16 - 数据库SQL查询

    Python学习日志 RBHGO的主页欢迎关注 温馨提示:创作不易,如有转载,注明出处,感谢配合~ 目录 文章目录 Python学习日志 目录 Python学习日志16课 - 数据库SQL查询 DQL ...

  4. oracle表结构修改回滚,87.Oracle数据库SQL开发之 修改表内存——数据库事务的提交和回滚...

    87.Oracle数据库SQL开发之 修改表内存--数据库事务的提交和回滚 数据库事务(transaction)就是一组SQL语句,这组SQL语句时一个逻辑工作单元. 要永久性的记录事务中SQL语句的 ...

  5. WordPress 常用数据库SQL查询语句大全

    https://www.wpdaxue.com/wordpress-sql.html 在使用WordPress的过程中,我们少不了要对数据库进行修改操作,比如,更换域名.修改附件目录.批量修改文章内容 ...

  6. pythonpandas用sql查询数据表_pandas从数据库读取数据

    因为本周有一个是需要使用pandos做一个数据分析的需求,所以在这里做一下记录. Python中用Pandas进行数据分析,最常用的就是Dataframe数据结构, 这里我们主要介绍Pandas如何读 ...

  7. 【SQL】数据库的SQL查询,涉及多个数据库

    SQL Server跨库查询 方式一: 语句 SELECT * FROM 数据库A.dbo.表A a, 数据库B.dbo.表B b WHERE a.field=b.field "DBO&qu ...

  8. 数据库SQL查询练习

    --重点推荐使用natural join,inner join!!!,尽量避免使用广义的笛卡尔积 --重点推荐使用natural join,inner join!!!,尽量避免使用广义的笛卡尔积 -- ...

  9. PostgreSQL数据库sql查询如何获取汉字拼音首字母

    一.前言 在实际开发过程中,经常会使用模糊查询,根据某个关键字模糊搜索,一般是 name like '%123%' 这样查,但是如果某个关键字用户不记得呢,只知道首字母,又如何模糊查询呢?例如,查询 ...

最新文章

  1. gitlab的升级【二】旧数据的备份和新数据的恢复
  2. JdbcTemplate中的query方法(代码)
  3. 如何实现Web前端自动化?让这些工具帮助你
  4. 数字文档搜寻指南 v6.0
  5. 虚拟机上部署的项目 访问路径怎么写_桌面虚拟化即将流行开来——基于Hyper-V虚拟机的桌面虚拟化部署...
  6. makefile / CMake
  7. Python练习:百分制到五级制的转换
  8. 1.Spring框架入门
  9. 什么是基本包装类型?
  10. python没基础能自学吗-需要自学python吗?大概多久能学会?
  11. 【无标题】曲线坐标张量分析
  12. 地质专业考遥感计算机研究生,遥感专业考研选择哪些学校
  13. msm8937之串口dts配置
  14. Android EditText属性android:inputType类型介绍
  15. 关于谷歌浏览器不能打开页面问题的解决
  16. Delphi学习第二课
  17. CSDN改变图片大小
  18. 分享美容美发预约下单小程序开发制作功能介绍
  19. Oracle 绑定变量详解
  20. Google zxing实现二维码扫描完美解决方案

热门文章

  1. URL重定向之一.htaccess文件和AllowOverride指令
  2. mac配置chromedriver
  3. Ping操作 ICMP的数据包的分析(基础学习)
  4. CA认证(Certificate Authority)
  5. java毕业设计消防应急管理系统源码+lw文档+mybatis+系统+mysql数据库+调试
  6. 腾讯云获ITSS最高等级能力认证 公有云和专有云获双一级
  7. 14. unity粒子特效--速度、粒子环绕、力(重力、阻力、风力等)、噪音
  8. Houdini开发:打开HDK的大门
  9. API `chooseFile` is not yet implemented,APP上传文件报错--uniapp
  10. 想开发IM集群?先搞懂什么是RPC!