Bonjour,
Je cherche à convertir plusieurs champs d'une table de type numeric(10,7) par exemple en int. J'ai essayé de convertir avec:
mais évidemment les données sont tronquées après la virgule.
Code : Sélectionner tout - Visualiser dans une fenêtre à part alter table matable alter column macolonne type int
Ensuite j'ai pensé à multiplier les données par 10^7
et maintenant faire un alter table mais j'ai cette erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part update matable set macolonne=macolonne*10000000
"ERROR: numeric field overflow
DETAIL: A field with precision 10, scale 7 must round to an absolute value less than 10^3."
Pouvez-vous m'aider svp
ps: Je souhaite convertir mes données numeric en int car ma table fait plus de 3 millions de lignes et les requêtes sont assez longue à l’exécution. J'ai lu sur internet que le type numeric ralentissait les requêtes parce qu'il fallait stocker la virgule... Qu'en pensez-vous?
Partager