Bonjour à tous,
j'ai une table avec 2 champs de type VARCHAR2, mais qui contiennent des valeurs numérique. Le séparateur décimal n'étant pas celui sur ma base de donnée (que je ne souhaite pas modifier), je réalise au préalable un REPLACE.
Cette requête fonctionne:
Maintenant je souhaite afficher uniquement les résultats supérieurs à la limite en faisant:
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select TO_NUMBER(replace(RESULTAT, '.', ',')) , To_NUMBER(replace(LIMITE, '.', ',')) from MA_TABLE WHERE RESULTAT is not null and LIMITE is not null
J'obtiens une erreur invalid number
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select TO_NUMBER(replace(RESULTAT, '.', ',')) , TO_NUMBER(replace(LIMITE, '.', ',')) from MA_TABLE WHERE RESULTAT is not null and LIMITE is not null and TO_NUMBER(replace(RESULTAT, '.', ',')) >= TO_NUMBER(replace(LIMITE, '.', ','))
Comment effectuer cette comparaison?
Merci d'avance
Partager