sql >> Base de Datos >  >> RDS >> Mysql

Busque pedidos que tengan dos productos, uno con referencia específica, otro con descripción específica

Si lo entiendo correctamente, desea encontrar un pedido que tenga una línea de pedido que cumpla una condición (referencia ="F40") y otra línea de pedido que satisfaga otra condición (descripción ="Epee").

Hacer una unión única no resolverá esto, ya que estará buscando una línea de pedido que satisfaga ambas condiciones. Deberías hacer algo como esto en su lugar:

SELECT orderNumber FROM `order`
WHERE id IN (
    SELECT orderid FROM orderDetail od1
    INNER JOIN orderDetail od2
    USING (orderid)
    WHERE od1.reference = 'F40' AND od2.description = "Epee"
)