2009-07-20 8 views
26

¿Cómo se convierte un valor oráculo varchar al númerooráculo varchar para numerar

por ejemplo

table - exception 
exception_value 555 where exception_value is a varchar type 

me gustaría probar el valor de la columna exception_value

select * from exception where exception_value = 105 instead of 
select * from exception where exception_value = '105' 

Respuesta

1

seleccione to_number (exception_value) de la excepción donde to_number (exception_value) = 105

34

Usted hav e para utilizar la función TO_NUMBER:

select * from exception where exception_value = to_number('105') 
10

Desde la columna es de tipo VARCHAR, debe convertir el parámetro de entrada a una cadena en lugar de convertir el valor de la columna a un número:

select * from exception where exception_value = to_char(105); 
3

Si quiere número formateado a continuación, utilizar

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

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

Resultado 123,00

0

He probado las soluciones sugeridas, todos ellos deben obra:

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

=> ofrece una fila ficticia

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

=> resultado vacío

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

=> ofrece un muñeco fila

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

=> resultado vacío

Cuestiones relacionadas