[Oracle] comment faire un to_number sur un replace?
Bonjour,
J'ai une table externe qui possède un champs de type char contenant en fait un nombre d'habitants. Ne me demandez pas pourquoi, mais ce nombre est donné comme ceci: 123456789,00
Je veux créer une table a partir de ma table externe, qui prends ce champs en le transformant en Number.
Je me suis dit que ceci pouvait faire l'affaire:
Code:
1 2
| INSERT INTO ma_table ( champ1, nbhabitants)
SELECT champ1, (to_number(replace(nbhabitants,',','.'),'99999999999.99')) as nbhabitants from ma_table_externe; |
Il me renvoie cette erreur:
Code:
1 2 3 4
| SELECT champ1, (to_number(replace(nbhabitants,',','.'),'99999999999.99')) as nbhabitants from ma_table_externe;
*
ERREUR à la ligne 2 :
ORA-01722: invalid number |
Si je teste le select seul, il ne fonctionne pas avec le number, mais il me retourne bien 123456789.00 si je ne fais que le replace.
Savez vous ce qui peut être la cause de ce problème?
Merci de votre réponse