Ilja: Entweder das eine, oder wenn das nicht, das andere...

Beitrag lesen

yo,

Ich stehe momentan komplett auf den Schlauch, ob man das elegant in einer Query formulieren kann. Ansonsten würde ich es halt programmtechnisch lösen.

ich vermute mal, du willst immer nur einen datensatz für eine content_id haben, weswegen auch der 4 datensatz bei lang = de ausgeschlossen wird.

SELECT m.title, m.content_id
FROM menu m
WHERE m.lang = "de"
OR m.lang IS NULL AND m.conten_id NOT IN
  (SELECT m2.content_id FROM menu m2 WHERE m2.lang = "de")
ORDER BY m.pos

Ilja