Oracle - como obtener un dato de una cadena

 
Vista:

como obtener un dato de una cadena

Publicado por Vane (5 intervenciones) el 02/08/2010 18:38:48
Hola a todos

tengo una cadena de la cual tengo que extraer un dato que pertenece a un número
ejemplo:
tengo que extraer todos los registros que contengan 311=xxxxxxxx

de la sig cadena

4=67GkebZ7ux00005x|8=0000000246|14=12488|15=2|16=0000000246|17=0000000343|27=2|51=1|53=2010071612165400|55=20100716121654|56=20100716121654|59=2010071612165400|69=0000111|74=4|75=2|77=BLL|78= |93=12000|94=9.44|95=2|105=20100716000000|106=MXN|112=-1|113=194|136=RO|162=67GkebZ7ux00005x|163=0000511|164=5046222|167=1|170=12|187=MXN|188=1|227=1|229=1|231=2329|232=12330|241=1|309=I|311=600|334=600|385=EXEC_BLL|388=0005230|395=10|402=0.0|408=00000000171543|462=3|490=721|510=1|624=0.0|764=2010071617165420|767=-1

El problema esta en que esta cadena cambia su colocacion. Esto quiere decir que no lo puedo encontrar siempre en la misma posición
y no puedo darle un tope para que solo me extraiga el número que requiero(en este caso 600), aparte el contenido del 311 pude variar de longitud desde 1 hasta 10 dígitos

por favor alguien que me heche la mano en este dilema
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:como obtener un dato de una cadena

Publicado por EDGAR (9 intervenciones) el 02/08/2010 20:55:32
tengo que extraer todos los registros que contengan 311=xxxxxxxx

select *
from
tabla
where insrt(tucampo,'|311=')>0

o

select *
from tabla
where tucampo like '%|311='

para extraer el valor

y espero te de una idea

select
substr(valor,instr(valor,'|311=')+5,(instr(valor,'|',instr(valor,'|311=')+5))-(instr(valor,'|311=')+5)) tuvalorbuscado
from
(
select
'|241=1|309=I|311=600|334=600' valor
from
dual
)
d

by oracle
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

RE:como obtener un dato de una cadena

Publicado por Vane (5 intervenciones) el 02/08/2010 22:39:04
OK. me ha servido bastante bien.

Muchas Gracias
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

RE:como obtener un dato de una cadena

Publicado por EDGAR (9 intervenciones) el 03/08/2010 16:38:22
k bueno k te halla servidor estamos en contacto.. en lo k se pueda ayudar ahi esta mi correo.

saludos.
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

mapeo de campos

Publicado por enmanuel torres (1 intervención) el 02/08/2010 21:36:56
como se maneja el mapeo de campos en oracle
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

RE:mapeo de campos

Publicado por EDGAR (9 intervenciones) el 03/08/2010 16:35:57
a que te refieres?? con mapear??
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