Oracle - Convertir de varchar a number

 
Vista:

Convertir de varchar a number

Publicado por nelem (1 intervención) el 06/05/2008 09:28:38
Buenos días, tengo un problemailla al realizar un select resulta que yo quiero convertir un campo varchar a number pero tengo el problema de que hay veces que me encuentro un caracter entonces tengo que poner nulo o descartar esa linea como lo podria hacer es que hay ya me pierdo (la conversión la intentaba hacer con TO_NUMBER).

Un saludo gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Convertir de varchar a number

Publicado por Pedro (25 intervenciones) el 06/05/2008 13:27:59
Buenas tu problema lo puedes resolver de varias formas, dependeria del volumen de datos que fueras a tratar (si vas registro a registro o en bloques de registros.

si se trata de un solo registro puedes crearte un bloque begin end, para tratar la excepcion
por ejemplo

begin /*principal*/
--codigo
declare
aux number;
begin
select to_number (campo)
into aux
from tabla
where.....
exception
when others then
aux := null
end;

update tablaloquesea
set campo2= aux
where valor.......
codigo
end ;

Si fueras a tratar un volumen grande de dados puedes implementar mas o menos el cacho de código anterior y meterlo en una funcion y que te devuelva el valor correspondiente, o en muchos casos lo que yo hago es q te devuelva true o false, y asi me sirve como funcion generica, lo unico que le pasaría como parametro la fecha, haria el to_number contra dual y devolveria el valor que me interesara, true, false, 0 1......

Espero que te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar