Это не слишком сложно. Предположим, у вас есть следующие таблицы:
- Клиенты, первичный ключ CustomerID
- Продукты, первичный ключ ProductID
- Заказы, первичный ключ OrderID, внешний ключ CustomerID
- ТоварыЗаказа , первичный ключ OrderItemID, внешние ключи OrderID, ProductID
Чтобы найти продукты, которые вы ищете, вы должны найти множество клиентов, которые купили этот конкретный продукт ID:
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 запросе!:)
Подробнее plz? – shin