博客
关于我
数据库SQL查询作业
阅读量:130 次
发布时间:2019-02-27

本文共 1585 字,大约阅读时间需要 5 分钟。

SQL 查询优化与解决方案

一、基本数据关系

  • 学生信息表 S(S#, SNAME, AGE, SEX)
  • 课程信息表 C(C#, CNAME, TEACHER)
  • 课程学生关系表 SC(S#, C#, GRADE)
  • 教师信息表 T(T#, TNAME, AGE, SEX)

二、具体查询优化与解决方案

1. 检索 LIU 老师所授课程的课程号与课程名
SELECT c.c#,c.cnameFROM cWHERE teacher = 'LIU';
2. 检索年龄大于23岁的男同学的学号与姓名
SELECT s.s#,s.snameFROM sWHERE age > 23  AND sex = '男';
3. 检索学号为 S3 学生所学课程的课程名与任课教师名
SELECT c.cname,t.tnameFROM c,scWHERE c.c# = sc.c#  AND s# = 'S3';
4. 检索至少选修 LIU 老师所授课程中一门课程的女学生的姓名
-- 方法一:嵌套查询SELECT s.snameFROM sWHERE sex = '女'  AND s# IN     (SELECT s#      FROM sc     WHERE c# IN        (SELECT c#         FROM c        WHERE teacher = 'LIU'));-- 方法二:多表联合查询SELECT s.snameFROM s,sc,cWHERE s.s# = sc.s#   AND sc.c# = c.c#   AND teacher = 'LIU'  AND s.sex = '女';
5. 检索王同学不学的课程号
-- 方法一:使用子查询SELECT c.c#FROM cWHERE c# NOT IN   (SELECT c#    FROM sc   WHERE s# IN      (SELECT s#       FROM s      WHERE sname = '王'));-- 方法二:联合查询SELECT c.c#FROM scWHERE c# NOT IN   (SELECT c.c#    FROM s,sc   WHERE s.s# = sc.s#    AND sname = '王');
6. 检索至少选修两门课程的学生学号
SELECT DISTINCT s.s#FROM sc x,sc yWHERE x.s# = y.s#   AND x.c# != y.c#;
7. 检索全部学生都选修的课程的课程号与课程名
-- 方法一:使用计数和子查询SELECT c.c#,c.cnameFROM cWHERE c.c# = (SELECT c.c#                FROM sc               GROUP BY c.c#,c.cname               HAVING COUNT(*) = (SELECT COUNT(*)                                 FROM s));-- 方法二:使用存在性子查询SELECT c.c#,c.cnameFROM cWHERE NOT EXISTS   (SELECT s.s#    FROM s   WHERE s.s# NOT IN      (SELECT sc.c#       FROM sc      WHERE sc.c# = c.c#));
8. 检索选修课程包含 LIU 老师所授课程的学生学号
SELECT DISTINCT s.s#FROM scWHERE c# IN   (SELECT c#    FROM c   WHERE teacher = 'LIU');

转载地址:http://igdb.baihongyu.com/

你可能感兴趣的文章
PAT甲级——1009 Product of Polynomials (25分)(最后一个测试点段错误)
查看>>
Spring对jdbc的支持
查看>>
vagrant 的安装
查看>>
PayPal网站付款标准版(for PHP)
查看>>
Paystack Android SDK 集成与使用指南
查看>>
pbf格式详解,javascript加载导出pbf文件示例
查看>>
PBOC2.0与3.0的区别
查看>>
PbootCMS entrance.php SQL注入漏洞复现
查看>>
PbootCMS 前台RCE漏洞复现
查看>>
PBT
查看>>
PB级分析型数据库ClickHouse的应用场景和特性
查看>>
pc3-12800
查看>>
PCA---主成成分分析
查看>>
PCA和自动编码器:每个人都能理解的算法
查看>>
pca算法
查看>>
PCA降维demo
查看>>
SharePoint 2013 图文开发系列之定义站点模板
查看>>
PCB生产流程详解-ChatGPT4o作答
查看>>
PCB设计十条黄金法则
查看>>
SpringSecurity框架介绍
查看>>