2

非常に単純な MySQL の質問があります。Customer と Orders の 2 つのテーブルがあります。Customer テーブルにはフィールド (id、name) があり、Order にはフィールド (id、customerID、item) があります。MySQL で次のクエリを使用して、製品 A を購入した顧客と製品 B を購入した顧客を見つけることができます。

SELECT DISTINCT c.`id`, c.name, o.`item`, o.qty FROM `customer` as c
INNER JOIN order AS o ON (c.`Id` =  o.`customerID`) 
where o.`item` ="Product A"

Union

SELECT DISTINCT c.`id`, c.name, o.`item`, o.qty FROM `customer` as c
INNER JOIN order AS o ON (c.`Id` =  o.`customerID`) 
where o.`item` ="Product B"

これら 2 つの結果セットの違いと類似点をどのように見つけることができますか? 1) すなわち、製品 A のみを購入し、製品 B を購入しなかった顧客 2) すなわち、製品 A と B の両方を購入した顧客

ご協力いただきありがとうございます。

D

4

1 に答える 1

0

を使用しLEFT OUTER JOINて結果を取得できます。

于 2013-08-08T17:53:08.230 に答える