Vous n'êtes pas identifié(e).
Pages : 1
Non, cela ne marche pas, le WHERE n'a l'air d'être exécuté qu'une seule fois, car au final tous mes enregs ont le même nom. J'avais essayé.
J'ai contourné le problème en externalisant la partie select dans une procédure et en remplaçant par :
UPDATE personne
SET nom_usuel = remplacer_nom();
Cela fonctionne, la fonction est recalculée pour chaque enreg.
Merci quand même.
Bonjour,
Je souhaite "anonymiser" des noms dans une table personne.
Pour ce faire, j'ai constituer une table référence avec 2 colonnes : index et nom. Je voudrais remplacer chaque nom de ma table personne par un nom tiré au hasard de ma table référence.
La requete suivante me ramène le même nom pour toutes les occurences de personne.
UPDATE personne
SET nom_usuel = (SELECT an.nom_usuel FROM ano_nom an
WHERE an.id_nom = mod(cast((floor(random()*100000000)) as bigint) ,8013));
Comment forcer l'exécution du SELECT pour chaque UPDATE ?
(8013, car j'ai 8013 noms dans ma table référence)
Merci d'avance.
Pages : 1