Ако ви разбирам правилно, искате да намерите поръчка, която има една линия на поръчка, отговаряща на условие (референция =„F40“) и друга линия на поръчка, отговаряща на друго условие (описание =„Шпага“).
Извършването на едно присъединяване няма да реши това, тъй като ще търсите една линия за поръчка, която удовлетворява и двете условия. Вместо това трябва да направите нещо подобно:
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"
)