Utilitaires
Scripts
Divers
Jeux
Rechercher
Quillevere.net
Réflexions informatiques

Access : utiliser un vrai aléa dans les requêtes

12/07/2008

La fonction RND (pour random) permet de renvoyer une valeur aléatoire, elle peut prendre en paramètre un nombre afin de renvoyer aléatoirement un nombre compris dans la plage 0-nombre.

Cependant, une particularité de cette fonction est qu'elle renvoie toujours la même séquence de réponses depuis le  lancement du moteur Jet. RND(4) peut ainsi toujours renvoyer 3, 4, 3, 1 à chaque fois... L'idéal pour obtenir un vrai aléa est de faire des calculs par rapport à un identifiant et au temps, qui évolue toujours, lui !

Voici ce que ça peut donner dans le cas d'un tri aléatoire :

SELECT monChamp
FROM maBase
ORDER BY RND ( (idChamp*(idChamp*1000)) MOD (DATEPART('s', NOW())+1) )

La séquence obtenue sera donc beaucoup plus aléatoire puisque se basant sur les secondes de l'horloge. La meilleure solution reste toutefois de créer l'aléa dans le code et non dans la base.

Dernière modification le 08/03/2019 - Quillevere.net

Rechercher sur le site

rss RSS info Informations