繁体   English   中英

如何让购买了 x 产品的客户也购买了 y 产品

[英]How to get the customers who bought x product also bought y product

我正在处理多个数据集。

sales(cust, product_no, total_amount)
product(product_no, product_quantity)
X_product_list(X_product_no)
Y_product_list(Y_product_no)

在产品表中,我们有两列 product_no、product_quantity。 product_no 包含 X_product_no 和 Y_product_no

注意 - X_product_list 和 Y_product_list 都不匹配,因为它们是不同的产品。

我正在对 Sales product_no 和 Product product_no 进行内部连接。 然后尝试检查购买 X_product_list 即使用 X_product_no 的客户是否也购买了 Y_product_list 即 Y_product_no。 下面是我编写的 Snowflake SQL 查询。 它返回空数据。

SELECT 
sales.cust,
FROM sales
INNER JOIN product
      ON sales.product_no = product.product_no
WHERE sales.product_no IN (SELECT X_product_no FROM X_product_list)
      AND sales.product_no IN (SELECT Y_product_no FROM Y_product_list)

我试图让 X_product_no 客户也购买了 Y_product_no 商品。

使用INTERSECT

SELECT sales.cust
FROM sales
JOIN product
  ON sales.product_no = product.product_no
WHERE sales.product_no IN (SELECT X_product_no FROM X_product_list)
INTERSECT
SELECT sales.cust
FROM sales
JOIN product
  ON sales.product_no = product.product_no
WHERE sales.product_no IN (SELECT Y_product_no FROM Y_product_list)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM