以下の表を例として、ID 2 の行のみを使用して、表示する単一の行を返すことが SQL で可能かどうか疑問に思っています。
table1 ( id 2 and 4 are missing value b)
id value
1 a
1 b
1 c
1 d
2 a
2 c
2 d
3 a
3 b
3 c
3 d
4 a
4 c
4 d
私は基本的に、「b」が存在しないすべてのインスタンスを見つけたいが、「a」は任意の ID に対してまだ存在し、その任意の ID に対して単一の行を返します。私はこのようなことを試しましたが、私が望むようには機能しません:
select * from table1
where not exists (select distinct value from table1 where value b)
「b」が存在しないが「a」が存在する値を特定して、最終結果をこれにしたいと思います(値を表示せず、最終目標には不要です):
result table
id
2
4