mysql 数据操作 多表查询 子查询 带IN关键字的子查询
1 带IN关键字的子查询
#查询平均年龄在25岁以上的部门名
关键点部门名
以查询员工表的dep_id的结果 当作另外一条sql语句查询条件使用
in (sql语句)
mysql> select dep_id from employee group by dep_id having avg(age) >25 ;
+--------+
| dep_id |
+--------+
| 201 |
| 202 |
+--------+
2 rows in set (0.00 sec)
mysql> select name from department where id in (select dep_id from employee group by dep_id having avg(age) >25) ;
+--------------+
| name |
+--------------+
| 人力资源 |
| 销售 |
+--------------+
2 rows in set (0.00 sec)
#查看技术部员工姓名
mysql> select name from employee where dep_id in (select id from department where name = "技术") ;
+-----------+
| name |
+-----------+
| mike |
| liwenzhou |
+-----------+
2 rows in set (0.00 sec)
#查看不足1人的部门名
查询部门id 这里的部门人数至少有1人以上
一个id 对应一个员工 有得id对应多个员工
mysql> select dep_id from employee ;
+--------+
| dep_id |
+--------+
| 200 |
| 201 |
| 201 |
| 202 |
| 200 |
| 204 |
+--------+
6 rows in set (0.00 sec)
拿到是至少有一个人部门id 取反就是不足1人的部门id
mysql> select distinct dep_id from employee ;
+--------+
| dep_id |
+--------+
| 200 |
| 201 |
| 202 |
| 204 |
+--------+
4 rows in set (0.00 sec)
取反
mysql> select name from department where id not in(select distinct dep_id from employee) ;
+--------+
| name |
+--------+
| 运营 |
+--------+
1 row in set (0.00 sec)
mysql 数据操作 多表查询 子查询 带IN关键字的子查询的更多相关文章
- mysql 数据操作 多表查询 目录
mysql 数据操作 多表查询 准备 多表连接查询介绍 mysql 数据操作 多表查询 多表连接查询 笛卡尔积 mysql 数据操作 多表查询 多表连接查询 内连接 mysql 数据操作 多表查询 多 ...
- mysql 数据操作 单表查询 目录
mysql 数据操作 单表查询 mysql 数据操作 单表查询 简单查询 避免重复DISTINCT mysql 数据操作 单表查询 通过四则运算查询 mysql 数据操作 单表查询 concat()函 ...
- mysql 数据操作 单表查询 where 约束 目录
mysql 数据操作 单表查询 where约束 between and or mysql 数据操作 单表查询 where约束 is null in mysql 数据操作 单表查询 where约束 li ...
- mysql 数据操作 单表查询 group by 分组 目录
mysql 数据操作 单表查询 group by 介绍 mysql 数据操作 单表查询 group by 聚合函数 mysql 数据操作 单表查询 group by 聚合函数 没有group by情况 ...
- mysql 数据操作 多表查询 子查询 介绍
子查询就是: 把一条sql语句放在一个括号里,当做另外一条sql语句查询条件使用 拿到这个结果以后 当做下一个sql语句查询条件mysql 数据操作 子查询 #1:子查询是将一个查询语句嵌套在另一个 ...
- mysql 数据操作 多表查询 子查询 带EXISTS关键字的子查询
带EXISTS关键字的子查询 EXISTS关字键字表示存在. EXISTS 判断某个sql语句的有没有查到结果 有就返回真 true 否则返回假 False 如果条件成立 返回另外一条sql语句的返 ...
- mysql 数据操作 多表查询 子查询 带比较运算符的子查询
带比较运算符的子查询 #比较运算符:=.!=.>.>=.<.<=.<> #查询大于所有人平均年龄的员工名与年龄 思路 先拿到所有人的平均年龄然后 再用另外一条sql ...
- mysql 数据操作 单表查询 where约束 like 模糊匹配
mysql> select * from employee; +----+------------+--------+-----+------------+-----------+------- ...
- mysql 数据操作 单表查询 where约束 is null in
需求找出年龄是 81 或者 73 或者 28 mysql ; +----+-----------+--------+-----+------------+-----------+----------- ...
随机推荐
- JSP中的动态包含和静态包含的区别
本文转载自http://blog.csdn.net/xuxu198899223/article/details/8501044 1. 语法格式 (1)静态包含:<%@ include file= ...
- 解决一起web 页面被劫持的案例
现象 江西客户手机端连接wifi打开URL,页面上显示淘宝店铺广告,使用手机移动网络打开正常,其他地区正常. 二. 处理过程 初步分析:3g.club项目使用了CDN,目前只有江西异常,其他地区无异常 ...
- 《转》Python学习(16)-python异常
转自 http://www.cnblogs.com/BeginMan/p/3171445.html 一.什么是错误,什么是异常,它们两者区别 这里解释如下:个人觉得很通俗易懂 错误是指在执行代码过程中 ...
- 【API设计】RESTful API 设计指南
RESTful API URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作. 例如 . REST描述的是在网络中client和server的一种交互形式:REST本身不 ...
- Git学习之Git检出
================================================ HEAD 的重置即检出 ======================================= ...
- 【规范】alibaba编码规范阅读
一.编程规范 (一)命名规范 1.代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束 2.代码中的命名严禁使用评语与英文混合的方式,更不允许直接使用中文的方式 3.类名使用Uppe ...
- ubuntu 14.04 LTS 右键菜单解压压缩包时出错
先卸载rar sudo apt-get remove rar 再安装unrar sudo apt-get install unrar
- sencha touch carousel 扩展 CardList 可绑定data/store
扩展代码: /* *扩展carousel *通过data,tpl,store配置数据 */ Ext.define('ux.CardList', { extend: 'Ext.carousel.Caro ...
- 安装ORACLE_RAC遇到的问题与解决方法
while running: /u01/app/oracle/product/10.2.0/db_1/root.sh Checking to see if Oracle CRS stack is al ...
- Django配合MySQL学习Django模型外键的建立和使用
Django 模型建立外键 在模型中建立外键是很简单的,基本操作如下 class Table(models.Model) column_name = models.ForeignKey(other-T ...