Comment mettre à jour une colonne de table avec des valeurs aléatoires à l'intérieur d'une fourchette dans Oracle?
J'ai un tableau avec 3 colonnes:
- PRIMARY_KEY
- AMOUNTS
- RAND_AMOUNTS
(toutes les valeurs null)
Je veux le RAND_AMOUNTS
colonne à être rempli avec formule suivante:
AMOUNT*(0-100 random value)/100
Ainsi, par exemple, si le montant de la ligne supposons est de 10 et la valeur aléatoire générée par la ligne 10 puis RAND_AMOUNT
devrait être 10 * 10 /100 = $1
OriginalL'auteur venky80 | 2011-04-26
Vous devez vous connecter pour publier un commentaire.
dbms_random() est ce que vous cherchez:
de vérifier la rand_amount colonne pour voir si elle est définie sur une échelle de 0 (par exemple le nombre(9,0) ). Si oui, il ne stocker des nombres entiers que l'échelle est le nombre de chiffres autorisés après la virgule.
OriginalL'auteur a_horse_with_no_name
+1 c'est joliment fait. Cela mérite plus upvotes. @hal9000, il a probablement été downvoted par quelqu'un qui ne se rendent pas compte que
dbms_random.value
renvoie la même chose quedbms_random.value(0,100)/100
. Eux les pauses 🙂Et pour les entiers entre 1 et 4 (inclus):
ceil(dbms_random.value() * 4)
OriginalL'auteur HAL 9000
À l'aide de:
devriez faire ce que vous êtes à la recherche pour.
OriginalL'auteur cagcowboy