[英]MySQL: How to select customers who purchased a product with addon accessory
假设我的表格如下所示:
|CUSTOMER | PRODUCT | PURCHASE ID | DATE |
|1A | A | 1234 | 01/01/2017 |
|1A | A1 | 12345 | 01/01/2017 |
|1B | A | 5432 | 02/01/2017 |
|1B | B | 54321 | 03/01/2017 |
|1B | C | 43215 | 04/01/2017 |
|1C | A | 6789 | 05/01/2017 |
|1C | A2 | 67891 | 05/01/2017 |
我如何仅选择购买了带有附加产品的特定产品的客户。 主要产品为A,B或C,附加产品为A1,B1或C1等。附加产品必须在同一日期购买,但可以具有不同的购买ID。 我需要显示所有行,包括主要产品和产品附加组件。
这是您所需的近似值
SELECT *
FROM sale_table S
JOIN sale_table as A
ON A.CUSTOMER=S.CUSTOMER AND A.DATE=S.DATE AND
A.PRODUCT<>S.PRODUCT AND
A.PRODUCT LIKE CONCAT(S.PRODUCT,'%');
这不会检查数字扩展名,因此APP
和APPLE
将被视为附加组件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.