ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 記號:SQL比較中,任何與NULL比較的結果都是null,則where條件反回的結果是false

記號:SQL比較中,任何與NULL比較的結果都是null,則where條件反回的結果是false

原创 Linux操作系统 作者:jdw618 时间:2010-10-16 20:11:15 0 删除 编辑

007中有這樣一個多行子查詢的例子,怎麼也想不通,不理解,做個記號。

SELECT emp.last_name
FROM   employees emp
WHERE  emp.employee_id NOT IN
(SELECT mgr.manager_id
FROM   employees mgr);
no rows selected

在這裡,由於子查詢的反回結果中包含一個null值,而任何與NULL比較的結果都是NULL,再加NOT IN ALL的規則,所以這裡沒有任何行反回。

切記,在=all、not in all(<>all)的子查詢條件判斷中,子查詢反回的結果中千萬不可以包含空值,=any、<>any的子查詢可以包含空值。

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7608831/viewspace-676073/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-10-08

  • 博文量
    27
  • 访问量
    81767