我試圖運行一個查詢,選定的人,它會根據他們的購買歷史和其他人買了誰也買了這個項目的物品。MySQL推薦一個項目。
例子:
Customer 1 purchases item A, and B.
Customer 2 purchases item B.
Customer 2 is recommended, item A.
我有在此使用4代表我將列出他們與相關行的名稱。
Customer
PK: Cust_ID
Session
PK: Ses_ID
FK: Cust_ID
Order
PK: Order_ID
FK: ItemRef_ID
FK: Session_ID
Item
PK: Item_ID
我很新的SQL,但這是我到目前爲止,之後,我真的不知道如何去做這件事。
目前它只給出所選客戶購買的商品'拉尼摩根',但我希望它顯示其他顧客購買的物品,誰買了'拉尼摩根'購買的物品。
SELECT Item_Desc, Item_ID
FROM rbickers.Item
LEFT JOIN rbickers.Order
ON Item.Item_id = Order.itemref_id
LEFT join rbickers.Session
ON Order.Session_id = Session.Ses_id
left join rbickers.customer
On customer.cust_ID = session.Cust_ID
Where Cust_First = "Lani" and Cust_Last = "Morgan"
GROUP BY Item_Type
LIMIT 10
任何幫助真的不勝感激,謝謝。
你能請詳細解釋一下',但是我希望它能顯示其他顧客購買的物品,誰買了'拉尼摩根'購買的樣品數據。 「拉尼摩根」不是您發佈的查詢中的客戶姓名嗎? –
是的,這是我的例子。基本上我想要做的是類似於亞馬遜推薦項目部分,但更基本的版本。 因此,如果拉尼摩根例如買了牙刷,買了牙刷的其他人也買了一些漱口水和一塊肥皂,查詢將返回,漱口和一塊肥皂。 我明白,在現實世界中還有更多的東西(尿布和啤酒場景),但現在我只是習慣於習慣學習一種新語言,並且正在爲這一點而努力。 – Wizard