导入hellodb.sql生成数据库,并进入到数据库之中

mysql -uroot < hellodb.sql

use mysql

(1)以ClassID分组,显示每班的同学的人数

`select classid,count(stuid) from students group by classid“

(2)以Gender分组,显示其年龄之和

select gender,sum(age) from students group by gender

(3)以ClassID分组,显示其平均年龄大于25的班级

select classid,avg(age) as new_age from students group by classid having new_age>25

(4)以Gender分组,显示各组中年龄大于25的学员的年龄之和

select gender,sum(age) from students group by gender

(5)显示前5位同学的姓名、课程及成绩

select name,course,score from (select name,score,courseid from (select * from students where stuid<=5) as s inner join scores on scores.stuid=s.stuid)as t inner join courses on courses.courseid=t.courseid

(6)显示其成绩高于80的同学的名称及课程

select name,course from (select name,score,courseid from (select from scores where Score>80) as t inner join students on students.stuid=t.stuid) as t inner join courses on courses.courseid=t.courseid

(7)求前8位同学每位同学自己两门课的平均成绩,并按降序排列

select t.stuid,avg(score) from (select stuid,courseid from (select from students where stuid<=8) as s inner join coc on s.classid=coc.classid) as t inner join scores on s cores.stuid=t.stuid group by t.stuid

(8)取每位同学各门课的平均成绩,显示成绩前三名的同学的姓名和平均成绩

select name,avg(score) as 平均分数 from (select name,courseid from students inner join coc on students.classid=coc.classid) as s inner join scores on s.courseid=scores.courseid group by stuid order by 平均分数 desc limit 3

(9)显示每门课程课程名称及学习了这门课的同学的个数

select courseid,count(CourseID) from students inner join coc on coc.classid=students.classid group by courseid

(10)显示其年龄大于平均年龄的同学的名字

select * from students where age>(select avg(age) from students)

(11)显示其学习的课程为第1、2,4或第7门课的同学的名字

select name,courseid from (select * from coc where CourseIDin (‘1′,’2′,’4′,’7’)) as new inner join students on students.classid=new.classid

(12)显示其成员数最少为3个的班级的同学中年龄大于同班同学平均年龄的同学

select * from (select name,classid,age from students) as s inner join (select new.classid,avg(age) as cc from (select classid from students group by ClassID having count(stuid) >= 3) as new inner join students on students.classid=new.classid group by new.classid) as a on a.classid=s.classid where cc

mysql 多表查询练习题_mysql多表查询练习相关推荐

  1. mysql多表连接 索引_MySQL多表查询之外键、表连接、子查询、索引

    一.外键: 1.什么是外键 2.外键语法 3.外键的条件 4.添加外键 5.删除外键 1.什么是外键: 主键:是唯一标识一条记录,不能有重复的,不允许为空,用来保证数据完整性 外键:是另一表的主键, ...

  2. mysql多表查询书籍_MySQL多表查询及子查询

    1. MySQL数据库执行查询操作时的查询流程: 请求-->查询缓存 请求-->查询缓存-->解析器-->预处理器-->优化器-->查询执行引擎-->存储引擎 ...

  3. mysql 多表查询 优化_Mysql 多表联合查询效率分析及优化

    1. 多表连接类型 1. 笛卡尔积(交叉连接)在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用','  如: SELECT * FROM table1 CROSS JOI ...

  4. mysql数据库表子查询语句_MySQL使用子查询教程

    #MYSQL#这是我MyySQL教程的第四篇了,可能对于一些大神来说这些都是小儿科,但是我还是相信这些东西会对一些人有帮助的,本篇主要会介绍上面是子查询以及如何使用它们.大概会从,什么是子查询,利用子 ...

  5. mysql 大表查询慢_mysql大表查询慢怎么优化?

    mysql大表查询慢的优化方法:1.合理建立索引,通常查询利用到索引比不用索引更快:2.对关键字段建立水平分区,比如时间字段,若查询条件往往通过时间范围来进行查询,能提升不少性能:3.建立粗粒度数据表 ...

  6. mysql多表联合查询事例_MySQL——多表查询详细介绍以及实例

    1.表与表之间的关系 一对一:用户表和身份信息表,用户表是主表 例如:男人表 .女人表create table man( mid int primary key auto_increment, mna ...

  7. mysql多表查询练习_MySQL多表查询综合练习答案

    一.综合练习 1.1 init.sql文件内容 /* 数据导入: Navicat Premium Data Transfer Source Server : localhost Source Serv ...

  8. mysql多表查询总结_MySQL多表查询总结

    MySQL术语: Redundacncy(冗余):存储两次或多次数据,以便实现快速查询. Primary Key(主键):主键是唯一的.表中每条记录的唯一标识. Foreign Key(外键):用于连 ...

  9. mysql多表查询视图_mysql多表查询并创建视图

    匿名用户 1级 2016-12-03 回答 MySQL在多个数据表上创建视图 在MySQL中,使用CREATE VIEW语句也可以在两个或两个以上的数据表上创建视图. 实例 在department表和 ...

最新文章

  1. unity shader入门精要_shader入门数学基础矩阵篇
  2. 学python语言用什么软件-对于自学python的初学者来说,应该使用什么编辑工具?...
  3. linux select 多路复用机制
  4. 石油计算机测控技术现场总线,中国石油北京《计算机测控技术》第二阶段在线作业...
  5. 《Python Cookbook 3rd》笔记(4.5):反向迭代
  6. as_hash ruby_Ruby中带有示例的Hash.each_pair方法
  7. Selenium WebDriver Api 知识梳理
  8. SAP ABAP第一,两,三代出口型BADI实现 解释的概念
  9. Linux 命令(79)—— pidof 命令
  10. 第一次接触WebSocket遇到的坑以及感受
  11. MyBatis防止SQL注入的方法
  12. 这是不是你想要的h5手机端弹窗
  13. 美通企业日报 | 中国最佳表现城市榜成都再登榜首;迪丽热巴代言澳洲品牌Swisse...
  14. Tomcat的使用(详细流程)
  15. 网易MuMu模拟器连接不上Android Studio
  16. Windows系统下安装Linux双系统(硬盘安装)
  17. CentOS7环境下 人大金仓kes86数据库安装过程
  18. sql 累计占比_sql中查询占百分比percent和通配符的使用
  19. 【日语口语词典学习】第0005页
  20. Node学习HTTP模块(HTTP 服务器与客户端)

热门文章

  1. oracle v$access执行很慢,Oracle bug之v$access
  2. 台式电脑可以连wifi吗_[Windows] wifi音箱:台式电脑也可以连接蓝牙音箱了
  3. struts深入原理之RequestProcessor与xml
  4. spring resource
  5. 【聚类算法】常见的六大聚类算法
  6. 七年前将UC卖给马云,套现300亿的何小鹏,现今再创新奇迹?播报文章
  7. 一季度网络支付58万亿,腾讯金融用户渗透率达89.2%
  8. 比特币黄金首遭“51%攻击”,可能动摇数字货币世界的根基
  9. 微软亚洲研究院刘铁岩博士:迎接深度学习的“大”挑战(一)
  10. 深度机器学习中的batch的大小对学习效果有何影响?