サーチ…


存在理由

顧客テーブル

イドファーストネーム苗字
1 Ozgur Ozturk
2 ユセフメディ
3 ヘンリータイ

注文表

イド顧客ID
1 2 123.50
2 3 14.80

少なくとも1つの注文ですべての顧客を獲得する

SELECT * FROM Customer WHERE EXISTS (
    SELECT * FROM Order WHERE Order.CustomerId=Customer.Id
)

結果

イドファーストネーム苗字
2 ユセフメディ
3 ヘンリータイ

注文なしですべての顧客を得る

SELECT * FROM Customer WHERE NOT EXISTS (
    SELECT * FROM Order WHERE Order.CustomerId = Customer.Id
)

結果

イドファーストネーム苗字
1 Ozgur Ozturk

目的

EXISTSINJOINは同じ結果に使用されることがありますが、等しくはありません。

  • EXISTSを使用して、別のテーブルに値が存在するかどうかを確認する必要があります
  • 静的リストにINを使用する必要があります
  • JOINを使用して、他のテーブルからデータを取得する必要があります。


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow