を複数のアイテムを注文した顧客を選択する方法はいくつかのサンプルデータです:SQL:ここ
ID Item
1 A
1 A
1 B
2 A
2 A
3 A
3 A
3 A
質問:イムが選択されているレコードだけがID 1を持つ顧客のものとなるようにコードを書くしようとしています(すなわち、製品AとBの両方を有する顧客)。結果は次のようになります。
1 A
1 A
1 B
私は多くのことを試しましたが、私は立ち往生しています。私は、自己結合しようとしたが、それは私が欲しいものを生成doesntの:
SELECT a.id, a.item
FROM table1 a Join table1 b on a.id=b.id
WHERE upper(a.item) = 'A'
AND upper(b.item) = 'B';
これは私の右の顧客(すなわち、顧客1)を与えるだろうが、それはすべての3つのレコードを引っ張るdoesntの。それはちょうど1列を与える。
最も近い同様の質問が enter link description here
ありがとう!それは完璧に働いた! – sqlfiddler
RealCheeseLordとJamesonの両方の犬が正解を持っています...どうすれば両方を受け入れることができますか? – sqlfiddler
@sqlfiddlerあなたは1つの答えだけを受け入れることができます。複数の正解がある場合、私は個人的に完全な説明を受け入れるか、どちらも同じ質であれば、前に投稿したものを個人的に受け入れます。しかし、あなたは決める。 – bish