aber warum klappt meine Abfrage nur, wenn in beiden Tabellen ein Datensatz vorhanden ist?
kommentare k1 LEFT JOIN ereignis e ON k1.parent_id = e._id,
kommentare k2 LEFT JOIN anzeige a ON k2.parent_id = a._id
in mein Buch fangen die "Left Joins" immer mit LEFT JOIN an, warum bei dir mit kommentare k1 udn kommentare k2?!
ob die Reihenfolge auch anders sein kann, weiß ich nicht...
jedenfalls sollten das eigentlich keine Kommentare sein, sondern K1 und k2 sind dann die Namen der Tabellen.. so wie kommentar AS k1;
und du brauchst halt zwei namen, weil du ja einmal auf ereignis und einmal auf anzeige vergeleichen willst
Ein bisschen was musst du schon selbst ausprobieren, aber so ungefähr:
SELECT
k1._id,
k1._setcard_id
...
k2._id,
k2._setcard_id
FROM
kommentare k1 LEFT JOIN ereignis e ON k1.parent_id = e._id,
kommentare k2 LEFT JOIN anzeige a ON k2.parent_id = a._id
WHERE
k1.freigeschaltet = "1" AND
k1.geloscht = "0" AND
k1._art = "ereignis"
k2.freigeschaltet = "1" AND
k2.geloscht = "0" AND (
AND e._geloescht = "0"
AND e._freigeschaltet = "1"
)
OR (
...
)
Irgendwie so ähnlich...