私はダイナーステーブルを持っています:
NAME     |   FOOD
-----------------
matthew  |   rice
matthew  |   beans
mark     |   rice
mark     |   beans
Luke     |   rice
john     |   beans
米のみを含む名前、豆のみを含む名前、およびその両方を抽出する必要があります。それらが別々のテーブルにある場合、LEFT JOINは機能します。しかし、それらが 1 つのテーブルにあるため、問題が発生しています。
これら2つのステートメントのバリエーションを試してみましたが、うまくいきませんでした:
SELECT name 
FROM diners 
WHERE NOT EXISTS 
    (SELECT name 
     FROM diners
     WHERE food = 'beans')
SELECT t1.name FROM diners AS t1
LEFT JOIN diners AS t2 ON t1.name = t2.name
WHERE t2.food = 'rice'
  AND t2.name IS NULL