No es demasiado complicado. Suponga que tiene las siguientes tablas:
- clientes, clave primaria CustomerID
- Productos, primaria clave ProductID
- Ordenes, primaria IdPedido llave, llave CustomerID extranjera
- de pedido , clave principal OrderItemID, claves foráneas ID de pedido, ID de producto
para encontrar los productos que busca, es necesario encontrar el conjunto de clientes que han comprado ese particular, Identificación del producto:
SELECT CustomerID
FROM (Customers INNER JOIN (Orders INNER JOIN OrderItems))
WHERE OrderItem.ProductID = <your product id here>
Entonces, usted necesita para obtener los demás productos aquellos clientes han comprado:
SELECT ProductID
FROM (Customers INNER JOIN (Orders INNER JOIN OrderItems))
WHERE (Customer = <given customer ID>) AND (ProductID <> <your product id>)
Luego seleccione los primeros productos y estará listo para las carreras.
Nota: Soy un tipo numérico. ¡Los gurús de DB podrán hacer esto en 1 consulta!:)
más detalles plz? – shin