Herausfinden welche ID nicht eingetragen ist?

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

  • Herausfinden welche ID nicht eingetragen ist?

    Hi,

    ich habe drei Tabellen:

    - name (nid INT,nname VARCHAR)
    - kategorie (kid INT, kname VARCHAR)
    - zuordnung (zid INT, nid INT, kid INT)

    In der Tabelle zuordnung wird z.B. gespeichert

    zid,nid,kid
    1,74,5
    2,74,20
    3,74,22

    Wie kann ich die Kategorien auflisten die nicht in der Tabelle zuordnung einen bestimmten Namen zugeordnet sind?

    So finde ich heraus welche Kategorien einen bestimten Namen zugeordnet sind:

    PHP-Code:
    SELECT z.nid AS znidz.kid AS zkidk.kid AS kkidk.kname FROM kategorie kzuordnung z WHERE z.nid =  '74' AND k.kid z.kid 
    Dann sehe ich welche Kategorien zur nid 74 zugeordnet sind. Ich möchte aber sehen welche nicht zugeordnet sind.

    Danke für Hilfe.

    Gruß

    Patrick

  • #2
    hilft dir das weiter?
    http://php-resource.de/forum/showthr...threadid=26359
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Danke schon mal,

      funktioniert schon fast. :-)

      Mit dem Befehl hier bekomme ich jetzt alle Kategorien angezeigt die noch garnicht gewählt sind.
      PHP-Code:
      SELECT lnk2_kat. *  FROM lnk2_kat LEFT  JOIN lnk2_lnk_kat ON lnk2_kat.kid lnk2_lnk_kat.kid WHERE lnk2_lnk_kat.kid IS  NULL
      Funktioniert wunderbar!

      Allerdings brauch ich noch eine Bedingung mehr. Ich möchte alle angezeigt bekommen die die lid 74 haben und nicht zugeordnet sind.

      So auf die Art:
      PHP-Code:
      SELECT lnk2_kat. *  FROM lnk2_kat LEFT  JOIN lnk2_lnk_kat ON lnk2_kat.kid lnk2_lnk_kat.kid WHERE ( ( lnk2_lnk_kat.lid =  '74' ) AND ( lnk2_lnk_kat.kid IS  NULL  ) ); 
      gehts leider nicht,

      und auf die Art:
      PHP-Code:
      SELECT lnk2_kat. *  FROM lnk2_kat,lnk2_lnk_kat WHERE lnk2_lnk_kat.lid '74' LEFT  JOIN lnk2_lnk_kat ON lnk2_kat.kid lnk2_lnk_kat.kid WHERE lnk2_lnk_kat.kid IS  NULL 
      gehts leider auch nicht.

      Ich habe glaube ich schon 10000 Möglichkeiten durchprobiert. Ich steh hier auf dem Schlauch, besser gesagt ich stoß hier an meine Grenzen.

      Danke noch mal für Hilfe.

      Gruß

      Kommentar


      • #4
        SELECT user FROM php-resource.de WHERE problem='loesen kann';





        scherz, mal im Ernst, ich wirklich noch keine Lösung gefunden. Weiß keiner was von Euch?

        PHP-Code:
        SELECT lnk2_kat. *  FROM lnk2_kat,lnk2_lnk_kat WHERE lnk2_lnk_kat.lid '74' LEFT  JOIN lnk2_lnk_kat ON lnk2_kat.kid lnk2_lnk_kat.kid WHERE lnk2_lnk_kat.kid IS  NULL 
        Soweit bin ich ja schon mal, da ist aber wohl noch der Wurm drin.

        Kommentar


        • #5
          das select is scheiße

          sicher, dass du richtig rum joinst?
          poste mal ein paar beispieldatensätze und sag dazu in welche tabelle die stehen
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            So schlecht fand ichs gar nicht

            Hier die Tables:

            lnk2_lnk_kat (Zuordnungstabelle)
            PHP-Code:

            zid    lid    kid
            4    74    15
            3    74    1
            5    74    7
            6    74    22
            7    74    8
            8    74    34
            9    74    5
            10    74    23
            11    74    17
            12    74    14
            13    75    17
            14    75    24
            15    75    23
            16    75    1 
            lnk2_kat (Kategorie)
            PHP-Code:

            kid    kategorie
            1    EDV
            2    PHP
            3    Linux
            4    Forum
            5    Javascript
            6    Techniker
            7    Studium
            8    FTP
            -Server
            10    Datenbanken
            11    Programmieren
            12    Webmaster
            -Tools
            13    Humor1
            14    Hotels
            15    Office 
            Ich möchte jetzt filtern, welche Kategorie ist bei einer bestimmten lid noch nicht in die Zuordnungstabelle lnk2_lnk_kat eingetragen.

            Danke
            Zuletzt geändert von White-Horse; 23.10.2003, 10:48.

            Kommentar

            Lädt...
            X