Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Erst mischen dann gruppieren?

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Erst mischen dann gruppieren?

    Hallo,

    vielleicht kann mir hier jemand helfen?

    Ich habe 2 Tabellen aus denen ich etwas gemeinsam auslesen möchte:

    In der ersten Tabelle sind die Userdaten gespeichert, z.B. auch das Land.
    In der zweiten Tabelle sind die Fotos gespeichert, verknüpft wird das Foto
    dann mit der Spalte "Userid".

    Nun möchte ich, dass ...

    ... 1. Nur die User ausgelesen werden, die auch ein Foto hochgeladen haben.
    Das geht auch mit der Abfrage
    SELECT * FROM [Tabelle1], [TABELLE2] WHERE [TABELLE1].id = [TABELLE2].userid

    ... 2. Pro Land nur ein User ausgegeben wird. Im Prinzip funktioniert das ja auch
    mit der GROUP BY land - Funktion, aber dann wird immer der gleiche User für jedes
    Land ausgegeben, es sollte aber immer ein verschiedener sein.
    ORDER BY RAND() funktioniert in diesem Fall leider auch nicht.

    Hat jemand eine Idee, wie ich dieses Problem lösen könnte?

    Danke und Gruß, Caro


  • #2
    Obs nen einfacheren Weg gibt kann ich dir nicht sagen, aber ich würds mit ner Sub-Abfrage machen:

    Code:
    SELECT * FROM ( 
    SELECT * FROM [Tabelle1] INNER JOIN [TABELLE2] ON [TABELLE1].id = [TABELLE2].userid ORDER BY RAND() 
    ) AS tmp GROUP BY land

    Kommentar


    • #3
      Oh, super, das war ja einfach.

      Vielen Dank!

      Kommentar

      Lädt...
      X