यह बहुत मुश्किल नहीं है। मान लें कि आप निम्न तालिकाओं है:
- ग्राहकों, प्राथमिक कुंजी CustomerID
- उत्पाद, प्राथमिक कुंजी ProductID
- आदेश, प्राथमिक कुंजी OrderID, विदेशी कुंजी CustomerID
- OrderItems , प्राथमिक कुंजी ऑर्डरइटम, विदेशी कुंजी ऑर्डर आईडी, उत्पाद आईडी
उत्पादों आप की तलाश के लिए, आप जो उस विशेष उत्पाद आईडी खरीदा है ग्राहकों के सेट खोजने की जरूरत है:
:
SELECT CustomerID
FROM (Customers INNER JOIN (Orders INNER JOIN OrderItems))
WHERE OrderItem.ProductID = <your product id here>
उसके बाद, आप अन्य उत्पादों उन ग्राहकों को खरीद लिया है प्राप्त करने की आवश्यकता
SELECT ProductID
FROM (Customers INNER JOIN (Orders INNER JOIN OrderItems))
WHERE (Customer = <given customer ID>) AND (ProductID <> <your product id>)
फिर शीर्ष कुछ उत्पादों का चयन करें और आप दौड़ में हैं।
नोट: मैं एक संख्यात्मक लड़का हूं। डीबी गुरु 1 प्रश्न में ऐसा करने में सक्षम होंगे!:)
स्रोत
2010-01-03 11:29:37
अधिक जानकारी कृपया? – shin