Ich habe eine Tabelle auf pgsql mit Namen (mit mehr als 1 Million Zeilen), aber ich habe auch viele Duplikate. Ich wähle drei Felder: id
, name
, metadata
.
Ich möchte sie zufällig mit ORDER BY RANDOM()
und auswählen LIMIT 1000
, daher sind dies viele Schritte, um Speicherplatz in meinem PHP-Skript zu sparen.
Aber wie kann ich das tun, damit ich nur eine Liste ohne Duplikate in den Namen bekomme?
Zum Beispiel [1,"Michael Fox","2003-03-03,34,M,4545"]
wird zurückgegeben, aber nicht [2,"Michael Fox","1989-02-23,M,5633"]
. Das Namensfeld ist das wichtigste und muss bei jeder Auswahl in der Liste eindeutig sein. Es muss zufällig sein.
Ich habe es mit versucht GROUP BY name
, aber dann erwartet es, dass ich ID und Metadaten auch in der GROUP BY
oder in einer Aggragate-Funktion habe, aber ich möchte nicht, dass sie irgendwie gefiltert werden.
Weiß jemand, wie man viele Spalten abruft, aber nur eine Spalte unterscheidet?