客戶表
| ID | 姓名 |
|---|---|
| 1 | 一種 |
| 2 | b |
| 3 | C |
| 4 | d |
采購表
| product_id | 客戶ID |
|---|---|
| X | 1 |
| 是的 | 1 |
| X | 4 |
| 是的 | 4 |
| X | 3 |
| z | 2 |
客戶表有客戶資料,采購表有訂單資料。現在提出問題,我希望購買類似產品的客戶 ID 按類似商品的數量排序,例如:如果我想要購買類似商品的客戶,例如客戶“a”,則查詢應回傳
| 客戶ID | 類似專案計數 |
|---|---|
| 4 | 2 |
| 3 | 1 |
'a' 買了 x,y d' 買了 x,y, c' 買了 x
所以 d 和 c 應該按相似的專案計數(desc)回傳順序
我不擅長較大的 sql 查詢,所以我需要問這個。
先感謝您
uj5u.com熱心網友回復:
SELECT t1.customer_id, t2.customer_id, COUNT(*) cnt
FROM purchase t1
JOIN purchase t2 ON t1.product_id = t2.product_id
AND t1.customer_id < t2.customer_id
GROUP BY t1.customer_id, t2.customer_id;
將回傳客戶配對和類似產品的數量。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/449360.html
上一篇:如何計算重復項?
