J'ai une table sur pgsql avec des noms (ayant plus de 1 million de lignes), mais j'ai aussi beaucoup de doublons. Je sélectionne 3 champs : id
, name
, metadata
.
Je veux les sélectionner au hasard avec ORDER BY RANDOM()
y LIMIT 1000
Je fais donc cela en plusieurs étapes pour économiser de la mémoire dans mon script PHP.
Mais comment puis-je faire pour que cela ne me donne qu'une liste ne comportant aucun doublon dans les noms.
Par exemple [1,"Michael Fox","2003-03-03,34,M,4545"]
sera retourné mais pas [2,"Michael Fox","1989-02-23,M,5633"]
. Le champ du nom est le plus important et doit être unique dans la liste chaque fois que je fais la sélection et il doit être aléatoire.
J'ai essayé avec GROUP BY name
mais il s'attend à ce que je dispose d'un identifiant et de métadonnées dans le fichier GROUP BY
ainsi que dans une fonction d'agrégation, mais je ne veux pas qu'ils soient en quelque sorte filtrés.
Quelqu'un sait-il comment récupérer de nombreuses colonnes mais ne faire qu'un distinct sur une seule colonne ?