Je souhaite attacher une colonne à ma table qui sera un nombre aléatoire d'une liste séquentielle = au nombre de rangées.Requête MySQL pour assigner un nombre aléatoire unique à chaque ligne
Donc, si ma table avait 999 lignes, puis les numéros 1 à 999 seraient répartis de façon aléatoire et unique.
Maintenant, j'ai pensé que je pourrais ajouter un mannequin TempRandomColumn = Rand(), trier par cela et ajouter les nombres séquentiellement en utilisant PHP. Mais cela signifie 999 déclarations MySQL.
Existe-t-il un moyen de le faire en utilisant une seule instruction MySQL?
Merci pour les pointeurs.
Pouvez-vous vraiment commande par rand? Cela me semble bizarre, parce que ça ne veut pas dire qu'il devrait appeler "rand" sur une rangée chaque fois qu'il le comparait à une autre rangée? –
Il sélectionne d'abord RAND() s comme valeurs temporaires avec des enregistrements normaux, puis trie sur ces valeurs temporaires. C'est la même chose que SELECT * FROM (SELECT ID, RAND() AS rnd Table FROM) ORDER BY rnd – Quassnoi
cool! +1 pour "zen-ness" –