EKKi: MySQL -> Nur Datensätze wo kein Eintrag

Beitrag lesen

Mahlzeit Piek,

Hierzu muss ich die zwei Tabellen (Tabelle A = "kommentar"; Tabelle B ="daten") per INNER JOIN verbinden.

Das ist vermutlich nicht ganz korrekt. Ich würde Dir dazu die "Einführung in Joins" empfehlen.

Soweit so gut, ich habe mir also folgenden query zusammengebaut, um die letzten Kommentare an zu Zeigen, wie aber kann ich nun die ID´s bekommen die "KEINE" Kommentare haben die im spam = 0 und bei freischalten = 0 sind?

Ganz einfach - basierend auf Deiner bisherigen Abfrage:

SELECT a.autor, a.inhalt, a.voting, b.bezeichnung, b.ort, b.id, b.kreis -- Gib mir alle möglichen Felder  
  FROM kommentar AS a                                                   -- aus der Tabelle "kommentar"  
  LEFT JOIN daten AS b ON ( a.artikel_id = b.id )                       -- und der optional verknüpften Tabelle "daten"  
 WHERE a.spam = '0'                                                     -- bei denen das Feld "spam" in der Tabelle "kommentar" den Wert 0 hat  
   AND a.freigeschaltet = '0'                                           -- und das Feld "freigeschaltet" in der Tabelle "kommentar" den Wert 0 hat  
   AND b.id IS NULL                                                     -- und das Feld "id" in der Tabelle "daten" leer ist (d.h. der entsprechende Datensatz ist dort nicht vorhanden)  
 ORDER BY a.datum DESC                                                  -- absteigend sortiert nach Datum  
 LIMIT 7                                                                -- und davon nur die ersten 7 Stück

MfG,
EKKi

--
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|