解决Mysql多行子查询的使用及空值问题


Posted in MySQL onJanuary 22, 2022

1 定义

  • 也称为集合比较子查询
  • 内查询返回多行
  • 使用多行比较操作符

2 多行比较操作符

解决Mysql多行子查询的使用及空值问题

-- 多行子查询

-- IN
SELECT
	employee_id,
	manager_id,
	department_id 
FROM
	employees 
WHERE
	manager_id IN ( -- 在返回集合中查找有没有相同的manager_id在里面
	SELECT
		manager_id 
	FROM
		employees 
	WHERE
	employee_id IN ( 141, 147 ));
	
-- ANY
#题目:返回其它job_id中比job_id为'IT_PROG'部门任一工资低的员工的员工号、姓名、job_id 以及salary
	last_name,
	job_id,
	salary 
	job_id != 'IT_PROG' 
	AND salary < ANY ( -- 比任意一个小都可以
	SELECT salary FROM employees WHERE job_id = 'IT_PROG' );
-- ALL
#题目:返回其它job_id中比job_id为'IT_PROG'部门所有工资低的员工的员工号、姓名、job_id 以及salary
	AND salary < ALL ( -- 比所有的都小才可以

3 空值问题

3.1 问题

-- 空值问题
SELECT
	last_name 
FROM
	employees 
WHERE
	employee_id NOT IN (
	SELECT -- 子查询中的结果有NULL
		manager_id 
	employees)

子查询的结果:

解决Mysql多行子查询的使用及空值问题

查询结果:

解决Mysql多行子查询的使用及空值问题

3.2 解决

去掉子查询中的NULL即可

-- 空值问题解决
SELECT
	last_name 
FROM
	employees 
WHERE
	employee_id NOT IN (
	SELECT
		manager_id 
	FROM
		employees 
	manager_id IS NOT NULL)

子查询去掉NULL:

解决Mysql多行子查询的使用及空值问题

查询结果:

解决Mysql多行子查询的使用及空值问题

到此这篇关于Mysql多行子查询的使用及空值问题的解决的文章就介绍到这了,更多相关Mysql多行子查询内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
mysql的MVCC多版本并发控制的实现
Apr 14 MySQL
解决MySQL存储时间出现不一致的问题
Apr 28 MySQL
MySql开发之自动同步表结构
May 28 MySQL
Mysql 如何查询时间段交集
Jun 08 MySQL
解决mysql模糊查询索引失效问题的几种方法
Jun 18 MySQL
MySQL系列之九 mysql查询缓存及索引
Jul 02 MySQL
MySQL实例精讲单行函数以及字符数学日期流程控制
Oct 15 MySQL
Mysql数据库手动及定时备份步骤
Nov 07 MySQL
Mysql调整优化之四种分区方式以及组合分区
Apr 13 MySQL
优化Mysql查询的示例
Apr 26 MySQL
MySQL数据库实验之 触发器和存储过程
Jun 21 MySQL
MySQL导致索引失效的几种情况
Jun 25 MySQL
如何避免mysql启动时错误及sock文件作用分析
Jan 22 #MySQL
教你使用VS Code的MySQL扩展管理数据库的方法
Jan 22 #MySQL
彻底解决MySQL使用中文乱码的方法
Jan 22 #MySQL
mysql分组后合并显示一个字段的多条数据方式
Jan 22 #MySQL
MySQL中int (10) 和 int (11) 的区别
Jan 22 #MySQL
JMeter对MySQL数据库进行压力测试的实现步骤
MySQL创建定时任务
Jan 22 #MySQL
You might like
ThinkPHP的常用配置选项汇总
2016/03/24 PHP
PHP中cookie知识点学习
2018/05/06 PHP
extjs两个tbar问题探讨
2013/08/08 Javascript
javascript中的window.location.search方法简介
2013/09/02 Javascript
cookie中的path与domain属性详解
2013/12/18 Javascript
js常用DOM方法详解
2017/02/04 Javascript
微信小程序 动态绑定事件并实现事件修改样式
2017/04/13 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
关于jQuery里prev()的简单操作代码
2017/10/27 jQuery
mint-ui的search组件在键盘显示搜索按钮的实现方法
2017/10/27 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
vue生命周期实例小结
2018/08/15 Javascript
layer弹出的iframe层在执行完毕后关闭当前弹出层的方法
2018/08/17 Javascript
微信小程序实现提交input信息到后台的方法示例
2019/01/19 Javascript
小程序实现自定义导航栏适配完美版
2019/04/02 Javascript
使用PYTHON接收多播数据的代码
2012/03/01 Python
决策树的python实现方法
2014/11/18 Python
python把1变成01的步骤总结
2019/02/27 Python
Python流程控制 while循环实现解析
2019/09/02 Python
pygame库实现移动底座弹球小游戏
2020/04/14 Python
HTML5的标签的代码的简单介绍 HTML5标签的简介
2012/05/28 HTML / CSS
Spartoo比利时:欧洲时尚购物网站
2017/12/06 全球购物
Bed Bath & Beyond加拿大官网:购买床上用品、浴巾、厨房电器等
2019/10/04 全球购物
请说出你所知道的线程同步的方法
2013/04/19 面试题
JAVA的事件委托机制和垃圾回收机制
2014/09/07 面试题
在C语言中实现抽象数据类型什么方法最好
2014/06/26 面试题
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
Ajax的工作原理
2015/12/04 面试题
勤俭节约演讲稿
2014/05/08 职场文书
酒店工程部岗位职责
2015/02/12 职场文书
研究生个人学年总结
2015/02/14 职场文书
有关骆驼祥子的读书笔记
2015/06/26 职场文书
2016年社区党支部公开承诺书
2016/03/25 职场文书
如何避免mysql启动时错误及sock文件作用分析
2022/01/22 MySQL
python数字图像处理之图像自动阈值分割示例
2022/06/28 Python
Win11 Build 25179预览版发布(附更新内容+ISO官方镜像下载)
2022/08/14 数码科技