Om jag förstår dig rätt vill du hitta en order som har en orderrad som uppfyller ett villkor (referens ="F40") och en annan orderrad som uppfyller ett annat villkor (beskrivning ="Epee").
Att göra en enda join kommer inte att lösa detta, eftersom du kommer att söka efter en orderrad som uppfyller båda villkoren. Du borde göra något så här istället:
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"
)