oracle varchar au numéro

voix
26

Comment puis-je convertir une valeur varchar oracle numéro

par exemple

table - exception
exception_value 555 where exception_value is a varchar type

Je voudrais tester la valeur de la colonne exception_value

select * from exception where exception_value = 105 instead of
select * from exception where exception_value = '105'
Créé 20/07/2009 à 17:40
source utilisateur
Dans d'autres langues...                            


5 réponses

voix
34

Vous devez utiliser la TO_NUMBER fonction:

select * from exception where exception_value = to_number('105')
Créé 20/07/2009 à 17:45
source utilisateur

voix
10

Étant donné que la colonne est de type VARCHAR, vous devez convertir le paramètre d'entrée à une chaîne plutôt que de convertir la valeur de la colonne à un nombre:

select * from exception where exception_value = to_char(105);
Créé 21/07/2009 à 11:33
source utilisateur

voix
3

Si vous voulez utiliser le numéro formated puis

SELECT TO_CHAR(number, 'fmt')
   FROM DUAL;

SELECT TO_CHAR('123', 999.99)
   FROM DUAL;

résultat 123,00

Créé 18/11/2013 à 11:07
source utilisateur

voix
1

sélectionner to_number (exception_value) à partir exception où to_number (exception_value) = 105

Créé 20/07/2009 à 17:43
source utilisateur

voix
0

J'ai testé les solutions proposées, ils devraient tous les travaux:

select * from dual where (105 = to_number('105'))

=> Délivre une rangée fictive

select * from dual where (10 = to_number('105'))

=> Résultat vide

select * from dual where ('105' = to_char(105))

=> Délivre une rangée fictive

select * from dual where ('105' = to_char(10))

=> Résultat vide

Créé 18/12/2017 à 15:28
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more