Mysql+两个结果集中的差异



我有一个非常简单的MySQL问题。我有两张桌子,客户和订单。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"

如何在这两个结果集中找到差异和相似之处?1) 即只购买了产品A而没有购买产品B的客户2) 即同时购买产品A和产品B 的客户

感谢您的帮助。

D

您可以尝试使用LEFT OUTER JOIN来获得结果。

相关内容

  • 没有找到相关文章

最新更新