MySQL嵌套,别名,分组查询

有以下三张表:分别是课程表c,有课程号cno,课程名cname,课程类别cpro等

学生信息表s,学号sno,姓名sname,性别ssex,年龄sage,班级sclass,籍贯jg

成绩表sc,学号sno,课程号cno,成绩score。

1.查询同时选修了c04和c05的同学的学号。

我们在成绩表sc中可以发现,选修了c04课程的有060101,060102,070103,070301四人,选修了c05课程的有060101一人。所以同时选修了c04和c05课程的人只有060101

通过sql语句查询,

(1).嵌套查询,先查出选修了c05课程的人,再在选修了c05课程的人中查询选修c04的人:select sno from sc where cno='c04' and sno in(select sno from sc where cno='c05');

只需要映射学号一列,select sno。来自表sc,form sc。 查询课程号为c04,并且学号为来自选修了c05的学号。sno in(查出的结果是选修了c05课程的学号)。选中,右击运行已选择的

(2).临时修改表名查询,sc分别临时修改为两张表a和b,连接查询,join on。

from sc a join sc b分别修改成两个命令a,b连接两个表的学号a.sno=b.sno。来自每张表的cno=c04和cno=c05,映射出a的学号a.sno
select a.sno from sc a join sc b on a.sno=b.sno where a.cno='c04' and b.cno='c05';  如图

2.统计选课人数超过3人的课程的课程号(cno)和选课人数(sno),分组(group by),统计学号大于3个人的

分析:选课人数超过3人,有c01课程和c04课程都超过了3人,要映射出他们的课程号和人数

语句:select cno 课程号,count(sno) 选课人数 from sc group by cno having count(sno)>3;

要查出课程号和课程人数,即cno,sno,改个名字cno 课程号sno 选课人数

在成绩表中,对课程分组,统计出分组后的学号个数大于3人的,如c01为1组,在c01中有060101,060102,070101,070301,统计学号的个数发现是4,满足赛选。反例:在c02课程组中,只有070101,080101两人,不满足count(sno)>3。如图:

----------end--------------

相关推荐

  1. mysql 分组函数,分组查询

    2024-06-06 21:42:06       60 阅读
  2. Elasticsearch 8 支持别名查询

    2024-06-06 21:42:06       32 阅读
  3. 26.MySQL中的别名

    2024-06-06 21:42:06       38 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-06 21:42:06       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-06 21:42:06       106 阅读
  3. 在Django里面运行非项目文件

    2024-06-06 21:42:06       87 阅读
  4. Python语言-面向对象

    2024-06-06 21:42:06       96 阅读

热门阅读

  1. acm模式练习

    2024-06-06 21:42:06       28 阅读
  2. Docker安全配置

    2024-06-06 21:42:06       26 阅读
  3. CMPSC473 malloclab: writing a dynamic storage allocator

    2024-06-06 21:42:06       27 阅读
  4. Flask的模块化实践

    2024-06-06 21:42:06       24 阅读
  5. Flask启动重复注册schedule问题

    2024-06-06 21:42:06       29 阅读
  6. LeetCode-239.滑动窗口最大值

    2024-06-06 21:42:06       26 阅读
  7. Napster诞生25周年:文件共享革命的引领者

    2024-06-06 21:42:06       31 阅读
  8. ZCC5429 异步升压芯片

    2024-06-06 21:42:06       35 阅读