简体   繁体   English

仅返回 SQL 中的错误值

[英]return only false values in SQL

How do I modify this to return only false values and avoid true values如何修改它以仅返回错误值并避免真实值

SELECT b."/BIC/ZSORHDR",
case when a."/BIC/ZSORHDR" is null then 'false' else end
FROM sappha."/BIC/ADD060400"  b
LEFT OUTER JOIN sappha."/BIC/AOPM20400" a
ON (b."/BIC/ZSORHDR" = a."/BIC/ZSORHDR")
WHERE  b."LOAD_DATE" = '20210118'

Move the logic in the CASE expression in the select to the WHERE clause:将 select 中的CASE表达式中的逻辑移到WHERE子句中:

SELECT b."/BIC/ZSORHDR"
FROM sappha."/BIC/ADD060400" b
LEFT JOIN sappha."/BIC/AOPM20400" a
    ON b."/BIC/ZSORHDR" = a."/BIC/ZSORHDR"
WHERE
    b."LOAD_DATE" = '20210118' AND
    a."/BIC/ZSORHDR" IS NULL;

the best way is to use NOT EXISTS as follows:最好的方法是使用NOT EXISTS ,如下所示:

SELECT b."/BIC/ZSORHDR"
  FROM sappha."/BIC/ADD060400"  b
WHERE NOT EXISTS 
      (select 1 from sappha."/BIC/AOPM20400" a
        WHERE b."/BIC/ZSORHDR" = a."/BIC/ZSORHDR")
  AND b."LOAD_DATE" = '20210118'

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM