久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

MySQL子查詢的空值問題解決

瀏覽:2日期:2023-08-02 20:12:38

目前數據庫中有三個表

EMPLOYEES表DEPARTMENTS表LOCATIONS表employee_iddepartment_idlocation_idfirst_namedepartment_namestreet_addresslast_namemanager_idpostal_codeemaillocation_idcityphone_numberstate_provincejob_idcountry_idsalarycommission_pctmanager_iddepartment_id#現在要求:#查找公司管理者的last_name。已知manager_id有為null的數據SELECT last_nameFROM employeesWHERE employee_id IN ( SELECT manager_id FROM employees );

這里找出了所有公司管理者的名字(18行數據)。 ? 已知employees中共107行數據 ? 現要查出這18人以外的人,理論上有89人。

#已知manager_id有為null的數據SELECT last_nameFROM employeesWHERE employee_id NOT IN ( SELECT manager_idFROM employees);

可見,查詢結果為空。

原因: 使用not in 的時候,如果not in后面的選項中有null,不會查詢出來任何數據。sql語句本身直接返回false

#舉例SELECT employee_id,last_nameFROM employees WHERE employee_id NOT IN (NULL,101,102);#該語句返回空集

舉例的查詢語句等價于

SELECT employee_id,last_nameFROM employees WHERE employee_id!= NULL AND employee_id!=101 AND employee_id!=102;

WHERE中的條件永遠返回null

null不能參與比較運算符,即與任何數據比較結果都為null,

比較結果分為true、false、null,只有結果為true時候,系統才認為匹配成功并返回記錄,

到此這篇關于MySQL子查詢的空值問題解決的文章就介紹到這了,更多相關MySQL子查詢空值內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: MySQL 數據庫
主站蜘蛛池模板: 德惠市| 青海省| 弋阳县| 正蓝旗| 理塘县| 额济纳旗| 渭南市| 丘北县| 邵东县| 顺昌县| 太保市| 渝北区| 衡水市| 红原县| 赫章县| 铜鼓县| 喀什市| 平泉县| 平乐县| 景洪市| 永清县| 锡林浩特市| 怀宁县| 宝丰县| 化州市| 武功县| 新营市| 江华| 舟曲县| 松桃| 垫江县| 沅陵县| 新泰市| 抚顺市| 龙胜| 龙口市| 邢台县| 沙坪坝区| 华安县| 错那县| 铜山县|