sandrinoo Posté 28 Juin 2017 Partager Posté 28 Juin 2017 Bonjour à tous et à toutes, Voilà mon souci (du jour), je bute là dessus depuis le début d'aprèm : j'ai besoin d'insérer via le sql de phpmyadmin un nombre aléatoire compris entre 00 et 99 (soit 00, 01, 02 jusqu'à 98, et 99). j'avais pensé mettre un truc du style : UPDATE XXXX SET nombre = ROUND( RAND() * 9 ) Mais ce code ne me génère que de 0 à 9. Peut-on le doubler en le concaténant comme ceci pour obtenir ce que je veux : set nombre = ROUND( RAND() * 9 ).ROUND( RAND() * 9 ) Visiblement non car ça marche pas chez moi... Si vous avez d'autres idées, je suis preneuse Lien vers le commentaire Partager sur d’autres sites More sharing options...
Aenoa Posté 28 Juin 2017 Partager Posté 28 Juin 2017 Bonjour, SELECT ROUND(RAND() * 99); tout simplement :-) Bonne journée! Lien vers le commentaire Partager sur d’autres sites More sharing options...
sandrinoo Posté 28 Juin 2017 Auteur Partager Posté 28 Juin 2017 merci Aenoa. Oui effectivement ! 1/ mais les 04 s'enregistre en 4. Ca dois être ma base qui est paramétrée comme ça. Je sais qu'en mettant des quotes sur un nombre avec un 0 devant c'est bon. Bref peut-on glisser des quotes dans le code que tu m'as donné ? 2/ Le problème aussi c'est que j'aurais besoin également d'un nombre de 18 chiffres style nombre =ROUND( RAND() * 999999999999999999 ) et là ça bloque également car cela me génère dans ma base mysql des nombres style 1.0984465583213108e16. Donc j'en reviens toujours à ma problématique de départ. Une concaténation de ROUND( RAND() * 99 ).ROUND( RAND() * 99 ) est-elle possible ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Aenoa Posté 28 Juin 2017 Partager Posté 28 Juin 2017 Concernant le 0 précédent pour les nombres <10, la concatenation peut etre une solution oui. SELECT CONCAT(ROUND(RAND() * 9),ROUND(RAND() * 9)); Tu peux aussi utiliser LPAD. SELECT LPAD( ROUND(RAND() * 99), 2, '0'); Pour le nombre à 18 chiffres, même popotte: SELECT ROUND(RAND() * 999999999999999999); et avec des leading 0, SELECT LPAD(ROUND(RAND() * 999999999999999999), 18, '0'); Bonne journée! Lien vers le commentaire Partager sur d’autres sites More sharing options...
sandrinoo Posté 28 Juin 2017 Auteur Partager Posté 28 Juin 2017 Super Merci beaucoup Aenoa ! La France remercie la Belgique Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant