N:M-Beziehung - Abfrage auf allen Ids

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

  • N:M-Beziehung - Abfrage auf allen Ids

    Hallo,

    ich habe eine typische N:M-Tabelle mit bspw.
    Code:
    class1id | class2id
       1         1
       2         1
       2         2
       3         2
    Jetzt habe ich z.B. eine Liste mit den Ids 1 und 2 und möchte nun alle class1ids bekommen, die bei class2id 1 UND 2 stehen haben.
    Ist das mit SQL überhaupt möglich?
    Soweit ich das sehe, passt da keines der typischen JOIN- oder SubQuery-Muster.

    Das durchforsten der Ergebnisse mit der Programmiersprache meiner Wahl wär aber auch nicht unbedingt günstig, bei den Datenmengen, die dann dort zusammen kommen.

    Grüße

    neogrande

  • #2
    self join
    PHP-Code:
    SELECT
      b1
    .class1id
    FROM
      blubb b1
    ,
      
    blubb b2
    WHERE
      b1
    .class1id b2.class2id
    so vom prinzip her. wenn ich dich richtig verstanden habe

    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Re: N:M-Beziehung - Abfrage auf allen Ids

      Nach ID1 gruppieren, WHERE-Klausel mit den ID2 - und mittels HAVING abfragen, ob COUNT gleich 2.
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Hui, das ist ja über 3 Ecken gedacht. Aber auch logisch, wenn man's sich näher überlegt.

        Vielen Dank für den Tipp, da wär ich sonst nie drauf gekommen.

        Kommentar

        Lädt...
        X