Bei doppeltem Auslesen doppeltes Anzeigen verhindern

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

  • Bei doppeltem Auslesen doppeltes Anzeigen verhindern

    Hi Leute,

    ich habe zwei Tabellen. Aus der ersten hole ich die ID. In der zweiten suche ich die Einträge, die diese ID als Referenz besitzen.

    Sieht ungefähr so aus:

    Tab1:
    ID - WERT
    1 - a
    2 - b
    3 - c
    4 - a
    5 - a

    Wenn ich alle Einträge dann habne will, wo der Wert "a" ist, bekomme ich die IDs: 1, 4, 5

    Tab2:
    ID - OID - WERT
    1 - 2 - x
    2 - 1 - y
    3 - 5 - y
    4 - 3 - i
    5 - 4 - z

    Ich hole aus der zweiten Tabelle alle Einträge, die OID = ID sind.
    Also bekomme ich die Werte: y, y, z

    Wie kann ich aber das doppelte Anzeigen verhindern? Ich brauche nur "y" und "z".

    Der Code ist so aufgebaut, dass ich eine Schleife in einer Schleife habe.
    Daher ist auch ein GROUP BY wert oder SELECT DISTINCT nicht möglich.

    Wie kann ich hier vorgehen?
    arrays sind klasse

  • #2
    Wenn du ein JOIN benutzen würdest, wäre auch ein DISTINCT möglich, denke ich!

    Kommentar


    • #3
      zeige doch erst einmal deinen code.

      und eine schleife in der anderen ist auch nciht die feine englische art...
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #4
        hab es gerade gelöst. der tip mit dem JOIN war nicht schlecht, denn beim suchen nach der syntax bin ich darauf gestoßen, dass man auch ein select aus zwei tabellen machen kann... was ich vorher noch nicht wuste

        habe einfach aus beiden selectiert und tab1.id=tab2.oid gesetzt und GROUP BY wert.

        danke aber für die hilfe
        arrays sind klasse

        Kommentar


        • #5
          Bingo!

          BTW: Ich möchte nicht wissen, wie viele Querys du vorher gesendet hast

          Kommentar

          Lädt...
          X