Hallo,
mit LEFT JOIN bekommst du das hin:
aber warum klappt meine Abfrage nur, wenn in beiden Tabellen ein Datensatz vorhanden ist?
ich tue mir bei Join's imemr schwer *g*
hab eben bestimmt 10mal das Kapitel Joins in mein Buch und auf MySQL.de durchgelesen, ich werd da nicht ganz schlau draus :-(
kommentare k1 LEFT JOIN ereignis e ON k1.parent_id = e._id,
kommentare k2 LEFT JOIN anzeige a ON k2.parent_id = a._id
ich kann mit dieser Zeile nicht viel Anfangen
in mein Buch fangen die "Left Joins" immer mit LEFT JOIN an, warum bei dir mit kommentare k1 udn kommentare k2?!
wie müsste das denn hier aussehen?
ich blick da nicht ganz durch
SELECT DISTINCT k._id, k._setcard_id, k._art, k._name
FROM kommentare AS k, ereignis AS e, anzeige AS a
WHERE k._freigeschaltet = "1"
AND k._geloescht = "0"
AND (
(
k._art = "ereignis"
AND e._id = k._setcard_id
AND e._geloescht = "0"
AND e._freigeschaltet = "1"
)
OR
(
k._art = "anzeige"
AND a._id = k._setcard_id
AND a._geloescht = "0"
AND a._freigeschaltet = "1"
)
)
ORDER BY k._datum DESC
LIMIT 10
mfg
Twilo