解決Mysql多行子查詢的使用及空值問題
更新時間:2022年01月22日 10:11:12 作者:不入開發(fā)不工作
所謂多行子查詢,是指執(zhí)行查詢語句獲得的結(jié)果集中返回了多行數(shù)據(jù)的子查詢,今天通過本文給大家分享Mysql多行子查詢的使用及空值問題,感興趣的朋友一起看看吧
1 定義
- 也稱為集合比較子查詢
- 內(nèi)查詢返回多行
- 使用多行比較操作符
2 多行比較操作符

-- 多行子查詢 -- 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 -- 子查詢中的結(jié)果有NULL manager_id employees)
子查詢的結(jié)果:

查詢結(jié)果:

3.2 解決
去掉子查詢中的NULL即可
-- 空值問題解決 SELECT last_name FROM employees WHERE employee_id NOT IN ( SELECT manager_id FROM employees manager_id IS NOT NULL)
子查詢?nèi)サ鬘ULL:

查詢結(jié)果:

到此這篇關(guān)于Mysql多行子查詢的使用及空值問題的解決的文章就介紹到這了,更多相關(guān)Mysql多行子查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
設(shè)置MySQL自動增長從某個指定的數(shù)開始方法
下面小編就為大家?guī)硪黄O(shè)置MySQL自動增長從某個指定的數(shù)開始方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01
MYSQL隨機(jī)抽取查詢 MySQL Order By Rand()效率問題
MYSQL隨機(jī)抽取查詢:MySQL Order By Rand()效率問題一直是開發(fā)人員的常見問題,俺們不是DBA,沒有那么牛B,所只能慢慢研究咯,最近由于項(xiàng)目問題,需要大概研究了一下MYSQL的隨機(jī)抽取實(shí)現(xiàn)方法2011-11-11
mysql中tonumber函數(shù)使用及注意事項(xiàng)
在MySQL中,沒有直接的TO_NUMBER函數(shù),但可以通過CAST或CONVERT實(shí)現(xiàn)字符串到數(shù)字的轉(zhuǎn)換,轉(zhuǎn)換前需明確數(shù)據(jù)類型,了解轉(zhuǎn)換語法,并注意錯誤處理、空值處理、格式合規(guī)性和精度問題,本文介紹mysql中tonumber函數(shù)使用及注意事項(xiàng),感興趣的朋友一起看看吧2025-02-02

