SELECT *
FROM REVIEW
WHERE REVIEWERID =5 AND APPRAISEECONFIRMYN='Y' AND HRCONFIRMYN = NULL
是否允许这样的 2 个“与”条件?我没有得到正确的输出。数据库中有 2 条记录满足上述条件。当我删除最后一个条件'HRCONFIRMYN = NULL'
并执行时,我得到了正确的输出。
如何解决?我需要在搜索记录时检查所有 3 个条件。
SELECT *
FROM REVIEW
WHERE REVIEWERID =5 AND APPRAISEECONFIRMYN='Y' AND HRCONFIRMYN = NULL
是否允许这样的 2 个“与”条件?我没有得到正确的输出。数据库中有 2 条记录满足上述条件。当我删除最后一个条件'HRCONFIRMYN = NULL'
并执行时,我得到了正确的输出。
如何解决?我需要在搜索记录时检查所有 3 个条件。
要比较这些NULL
值,您必须使用IS NULL
谓词而不是= NULL
像这样:
SELECT *
FROM REVIEW
WHERE REVIEWERID = 5
AND APPRAISEECONFIRMYN = 'Y'
AND HRCONFIRMYN IS NULL
OR
改为使用IS NULL
与 NULL 比较时使用询问,
SELECT *
FROM REVIEW
WHERE (REVIEWERID =5 AND APPRAISEECONFIRMYN='Y') OR
HRCONFIRMYN IS NULL