选择id=0或id=555,但不能同时选择两者-ORACLE SQL
似乎Oracle缺少XOR运算符,我无法理解当找不到ID=555的行时,如何让下面的查询选择ID=0的行选择id=0或id=555,但不能同时选择两者-ORACLE SQL,sql,oracle,select,xor,Sql,Oracle,Select,Xor,似乎Oracle缺少XOR运算符,我无法理解当找不到ID=555的行时,如何让下面的查询选择ID=0的行 SELECT * FROM table WHERE (id = 0 or id = 555) 这将为我提供id为0和555的行,但如果存在具有相同键且id=555的匹配行,我不希望使用id=0的行。您可以使用不存在,如下所示: SELECT * FROM table t WHERE id = 0 AND NOT EXISTS (select 1 from ta
SELECT * FROM table WHERE (id = 0 or id = 555)
这将为我提供id为0和555的行,但如果存在具有相同键且id=555的匹配行,我不希望使用id=0的行。您可以使用
不存在,如下所示:
SELECT * FROM table t
WHERE id = 0
AND NOT EXISTS
(select 1 from table tt
where tt.key = t.key and tt.id = 55)
您可以使用不存在
,如下所示:
SELECT * FROM table t
WHERE id = 0
AND NOT EXISTS
(select 1 from table tt
where tt.key = t.key and tt.id = 55)
我看不出排他OR在这里有什么帮助,因为ID不可能同时为0和555。似乎您需要ID=0且ID=555不存在行的行,或者ID=555且ID=0且不存在行的行。这已经或多或少是SQL语法了。我看不出异或在这里有什么帮助,因为ID不可能同时为0和555。似乎您需要ID=0且ID=555不存在行的行,或者ID=555且ID=0且不存在行的行。这或多或少已经是SQL语法了。