Geschachtelte Abfrage aus 2 Tabellen

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

  • Geschachtelte Abfrage aus 2 Tabellen

    Ich habe 2 Tabellen

    A: user_id , lastname, ...
    B: user_id, conf_id, ....

    Und zwar suche ich nach dem mysql Befehl um folgende Werte zu erhalten:

    alle user aus A, die mit $anf beginnen und
    falls deren user_id ebenfalls in B steht, nur die user bei denen die die user_id nicht in der selben zeile steht wie die angegebene conf_id

    logisch ausgedrückt: alles aus A wobei !(user_id AND conf_id) in B

    Vielen Dank falls jemand dazu eine Lösung weiß!!

  • #2
    Gibt es in B maximal einen Eintrag pro userid ? sprich: ist user_id dort primary key ?

    Probier mal das:
    [FONT=Courier, Tahoma, Verdana, Arial]SELECT a.user_id,a.lastname,b.conf_id
    FROM a LEFT OUTER JOIN b ON b.user_id=a.user_id
    WHERE SUBSTRING(a.lastname,1,1)='$anf' AND
    (b.conf_id IS NULL OR b.conf_id<>$conf_id);[/FONT]
    [color="#334D7B"]"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"[/color]
    [color="#9C5245"]"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "[/color]
    [color="#334D7B"]"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."[/color]

    © Harald Schmidt

    Kommentar


    • #3
      primary key

      die user_id ist nicht primary key in B, kann also öfter in der Tabelle B vorkommen

      Kommentar


      • #4
        genauerer Beschreibungsversuch

        danke für den code, ich habe ihn ausprobiert, es funktioniert aber leider nicht; es werden alle user aus der tabelle b ausgegeben.

        vielleicht hab ich mich auch zu undeutlich ausgedrückt, mit dem was da ausgewählt werden soll, also ich versuche es dann nochmal:

        und zwar sollen alle user der tabelle a ausgewählt werden, mit einer einschränkung, und zwar sollen die user nicht ausgewählt werden, falls sie schon in der tabelle b in verbindung mit einer bestimmten confID stehen, dabei ist die userid in der tabelle b kein primärschlüssel

        Kommentar


        • #5
          ja, habs schon gerafft, die abfrage war aber darauf ausgelegt, dass in b user_id der primary key ist. ansonsten musst du das anders machen.
          [color="#334D7B"]"Los, lass uns loslegen! Hm ? Quatschen können wir hinterher immer noch!"[/color]
          [color="#9C5245"]"Aber Bommel, wir können jetzt nicht bumsen. Wir müssen doch erst den Kindern - ... "[/color]
          [color="#334D7B"]"Ja ja ja. Du willst immer nur das Eine. Buchstabenzeigen, Buchstabenzeigen - meine Gefühle sind dir wohl scheißegal."[/color]

          © Harald Schmidt

          Kommentar

          Lädt...
          X