Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Suchen Sie nach Bestellungen mit zwei Produkten, eines mit spezifischer Referenz, das andere mit spezifischer Beschreibung

Wenn ich Sie richtig verstehe, möchten Sie einen Auftrag finden, bei dem ein Auftragsposten eine Bedingung erfüllt (Referenz ="F40") und ein anderer Auftragsposten eine andere Bedingung erfüllt (Beschreibung ="Epee").

Eine einzelne Verknüpfung löst dieses Problem nicht, da Sie nach einem Bestellposten suchen, der beide Bedingungen erfüllt. Sie sollten stattdessen so etwas tun:

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"
)