MySQL-06分组和连接查询_第1页
MySQL-06分组和连接查询_第2页
MySQL-06分组和连接查询_第3页
MySQL-06分组和连接查询_第4页
MySQL-06分组和连接查询_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 了解数据库的概念 掌握MySQL数据库服务器的安装方法 了解数据库的组成和创建数据库 熟练使用SQL(DDL)创建表 熟练使用SQL(DML)对表进行增删改操作 熟练使用SQL(DQL)对表进行查询第一章第二章第三章第四章第五章第六章第七章初识数据库数据库建表原则和方式使用标准SQL增删改标准SQL数据查询基础模糊,聚合函数、分组查询连表查询数据库综合案例分组和连接查询LIKE的使用IN 和 NOT IN的使用聚合函数的使用子查询的使用 熟练使用GROUP BY HAVING 语句 熟练使用连接查询 求各部门老师的平均工资 求部门老师平均工资大于3000的学校 使用一个sql语句查询出老师信

2、息和部门名称 我们之前的表结构都非常简单,现在我们给教师表添加一个所属部门字段和一个部门表,教师表和部门表之间使用外键关联第一节 分组查询 HAVING 连接查询 教师表有了部门号以后,我们统计各部门的平均工资怎么统计SELECT FROM . WHERE . GROUP BY 字段1,字段2,字段3后面跟分组的字段,根据部门分组,就跟 部门字段这里除了聚合函数外,只能写group by后存在的字段 统计各部门的平均工资SELECT dep_id,AVG(salary) FROM teacher GROUP BY dep_id;注意这里只能出现group by后的字段 先根据部门分组,再根据地

3、址分组,求平均工资SELECT dep_id,address,AVG(salary) FROM teacher GROUP BY dep_id,address; 求各部门教师的总工资、教师数目、平均工资、最小工资 要求使用一条sql完成 只有出现在group by 中的列才能出现在 select 子句中或order by子句中 如果在group by子句中的列上应用了某些函数,select子句中或order by子句的相应列也必须应用同样的函数 那些没有出现在group by 中的列,只有配合分组函数可以出现在select子句中 或 order by子句中第二节 分组查询 HAVING 连接查

4、询 怎样统计部门教师数据大于2位的部门号SELECT * FROM (SELECT dep_id,COUNT(1) c FROM teacher GROUP BY dep_id) tmp WHERE c2想到用子查询了吗? GROUP BY 是在 WHERE 条件后执行的 HAVING 是在 GROUP BY 后执行的 HAVING 可以简化刚才的查询SELECT dep_id,COUNT(1) c FROM teacher GROUP BY dep_id HAVING COUNT(1)2 编写顺序 执行顺序SELECT FROM WHERE GROUP BY HAVING ORDER BY

5、WHERE - GROUP BY - HAVING - SELECT - ORDER BY 查询平均工资大于3000的部门号,并按升序排序 查询各部门济南人平均工资,并按降序排序第二节 分组查询 HAVING 连接查询 每个老师所来部门的部门号在department 表中 怎样通过一条sql查询各老师的名称和部门名称呢? 前面的内容中,所有的查询都来自于一张表 很多时候我们要查询的信息存在多张表里 使用连接查询语法可以解决 内连接 右连接 左连接SELECT * FROM teacher tINNER JOIN department d ON t.dep_id=d.id要连接的表连接的条件 查

6、询工资大于3000的老师信息和部门名称 查询2号部门的老师信息和部门名称 在内连接中我们发现部门表的4号部门并没有出现在结果里 因为教师表没有4号部门的老师 如果也想展示4号部门的信息呢SELECT * FROM teacher tRIGHT JOIN department d ON t.dep_id=d.idLEFT 前面的连接查询都是教师表在前,部门表在后 如果想得到示例5的结果但是又交换表的顺序 可以使用LEFT JOIN 正好和SELECT * FROM department dLEFT JOIN teacher t ON t.dep_id=d.id 给学生表添加班级字段 新建班级表(跟部门表类似) 使用内连接外连接等做相似的查询 连接查询后面都有ON来跟随连接条件 如果没有ON的条件,会产生笛卡尔积的错误

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论