[MySQL 4.0] Join - Nur Datensätze anzeigen wo keine Übereinstimmung existiert

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [MySQL 4.0] Join - Nur Datensätze anzeigen wo keine Übereinstimmung existiert

    Hallo,

    ich habe 2 Tabellen, eine mit texten und eine in der gelogt werden welcher user schon welchen text gelesen hat.

    Ich möchte nun per anzeigen welche Texte der user userid noch nicht gelesen hat. ich bekomme es bisher nur hin die texte die er gelesen hat anzeigen zu lassen.

    Hier die Tabellenlayouts.

    Texttabelle:
    id
    uberschrift
    text

    Usertabelle
    id
    textid
    userid

    Danke für eure Hilfe
    toshen

  • #2
    Re: [MySQL 4.0] Join - Nur Datensätze anzeigen wo keine Übereinstimmung existiert

    Original geschrieben von toshen
    ich bekomme es bisher nur hin die texte die er gelesen hat anzeigen zu lassen.
    Prima, die dazu nötige Query nennen wir jetzt mal "schon_gelesen" und verwenden sie wie folgt:

    SELECT ... FROM ... WHERE ... NOT IN(schon_gelesen)

    Kommentar


    • #3
      Sorry wenn ich jetzt Dau mässig rüberkomme, aber kannst du mir mal nen beispielquery geben?

      der Query mit dem ich rausbekomme welche texte der user schon gelesen hat ist:

      select t1.id, t1.text, t2.userid from texttable AS t1, usertable AS t2 where t1.id = t2.textid

      wie packe ich das ganze in das NOT IN?

      Kommentar


      • #4
        Damit bekommst du raus, welche Texte überhaupt schon gelesen wurden, was nicht bedeutet, dass dies durch einem ganz bestimmten User geschah. Dazu müßtest du nämlich noch auf eine bestimmte Userid prüfen.

        Code:
        SELECT id, ueberschrift, text
        FROM texttable
        WHERE id NOT IN(
            SELECT texttable.id 
            FROM texttable, usertable
            WHERE texttable.id = usertable.textid
            AND usertable.id = <hierEineUserID>
        )

        Kommentar


        • #5
          Genial,

          genau so funktioniert es.

          vielen Dank

          Kommentar

          Lädt...
          X