Bonjour à tous
Je possède une table T1 avec un champ "C1", qui est un varchar2(30).
Ce champ possède des valeurs comme ceci :
Le problème c'est que je souhaite effectuer des calculs sur ces nombres... qui sont de type texte Si je fait un calcul tout bête j'obtiens "invalid number"...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 C1 ..... 3.45 54 -1 6.46 6 646 -1 93.21
Alors que si je fais quelque chose comme ceci :
J'obtiens bien 24,01... Donc oracle arrive bien à calculer des nombres séparés par un point.. Dans ce cas j'ai alors modifié la table en passant le type "varchar2(30)" en "Number(10,2)", mais lors de l'insertion des enregistrements dans la table j'obtiens encore "invalid number" ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 select 3.43*7 from dual
Une idée pour convertir toute une colonne directement? (donc après avoir inséré mes données en tant que varchar2(30)) ??
Merci à tous
EDIT : je suis sous Oracle 10g
Partager