我有一个包含以下格式的表,如果所有行的Value1为null,我想获取LotId。
现在如果我在做Select,
Select * from Table1 where Value1 IS nul
我,我要回来了。
但我希望不应该返回任何内容,因为有两行有一些价值。
我想到了自我加入,但这可以有n行。
Id LotId Value1
-------------------------------------------------
1 LOt0065 NULL
2 LOt0065 SomeValue
3 LOt0065 SomeValue
答案 0 :(得分:1)
我认为你需要在这里使用EXISTS子查询:
SELECT a.lotid
FROM table1 a
WHERE NOT EXISTS (
SELECT 1
FROM table1 b
WHERE b.lotid = a.lotid
AND b.value1 IS NOT NULL
);
如果我的语法正确,那么这将显示所有没有该lotid的NULL值的记录:
这能否为您提供所需的结果?