Cette question a trait à la formulation d'une requête dans PostgreSQL
Supposons que je le tableau suivant:Comment sélectionner toutes les lignes de groupes n aléatoires dans Postgres
record entity docid sentencid
1 A 123 1231
1 A 123 1232
1 A 100 1001
1 C 100 1002
1 B 121 1212
1 B 123 1234
2 B 102 1021
2 D 111 1111
2 D 102 1022
2 E 101 1011
3 C 111 1115
3 C 111 1113
3 C 111 1114
Y at-il une requête PostgresSQL
que je peux utiliser pour sélectionner tous lignes pour n (ou moins) groupes aléatoires d'entités pour chaque enregistrement dans cette table? Disons que n est 2. Donc la requête doit sélectionner toutes les lignes pour l'enregistrement 3 et toutes les lignes pour 2 groupes d'entités aléatoires de l'enregistrement 1 et 2. Le résultat final doit être commandé par accession
, entity
, docid
, sentenceid
.
Voici un exemple de résultat avec n = 2:
record entity docid sentencid
1 A 100 1001
1 A 123 1231
1 A 123 1232
1 B 121 1212
1 B 123 1234
2 D 102 1022
2 D 111 1111
2 E 101 1011
3 C 111 1113
3 C 111 1114
3 C 111 1115
supposer que les entités A et B ont été choisis au hasard parmi l'ensemble des entités (A, B, C) pour fiche 1 et les entités D et E ont été choisis au hasard parmi l'ensemble des entités (B, D, E) pour l'enregistrement 2. Les n entités doivent être sélectionnées de façon aléatoire pour chaque enregistrement.
J'ai cherché intensivement pour les réponses à cette question mais n'ai trouvé aucune question fonctionnante. Merci d'avoir regardé ça!
Pouvez-vous poster le résultat attendu pour 'n = 2' –
J'ai fourni un résultat acceptable pour n = 2. S'il vous plaît laissez-moi savoir si vous avez d'autres questions. Merci! – ltt