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 BYoder 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?