Oracle - Concatenacion de subquerys que contienen decode

 
Vista:
sin imagen de perfil

Concatenacion de subquerys que contienen decode

Publicado por Josue Gomez (15 intervenciones) el 18/04/2015 20:01:16
Estimados tengo un problema de concatenacion tengo dos tablas la primera la utilizo normalmente pero a la segunda le hago decode, puedo concatenar hasta una subquery con decode pero no puedo mas de una me sale error: ORA-00923: FROM keyword not found where expected, que me faltara en la sintaxis, pongo un ejemplo


select uno.val_uno||'/'||uno.val_dos||'/'||(select decode(dos.val_uno,'valoruno',dos.campo_uno)from tabla_dos dos where uno.key=dos.key and dos.val_uno ='valoruno' )as valor_uno from tabla_uno uno where uno.val_uno ='buscarEsto';

esa query funciona perfecto:
val_uno/val_dos/valor_uno

pero si le añado otra subconsulta y quiero concatenar no me permite:

select uno.val_uno||'/'||uno.val_dos||'/'||(select decode(dos.val_uno,'valoruno',dos.campo_uno)from tabla_dos dos where uno.key=dos.key and dos.val_uno ='valoruno' )as valor_uno ||'/'|| select decode(dos.val_dos,'valordos',dos.campo_dos)from tabla_dos dos where uno.key=dos.key and dos.val_uno ='valordos' )as valor_dos from tabla_uno uno where uno.val_uno ='buscarEsto';

yo esperaria esto:
val_uno/val_dos/valor_uno/valor_dos

el error lo tengo al hacer las subquerys con decode porque he intentado concatenar varias subquerys que no contienen decode y no tengo problema, el problema lo obtengo al utilizar las subquerys con decode pero es necesario hacerlo as
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
sin imagen de perfil

Concatenacion de subquerys que contienen decode

Publicado por Jorge (21 intervenciones) el 20/04/2015 18:54:24
hola,

estas intentando concatenar despues de haber colocado el alias valor_uno. Luego de poner un alias se espera otra columna o en todo caso el FROM. Por eso te sale error.
Otro error que noto es que tu segundo subquery no esta encerrado entre parentesis correctamente. Verificalo.

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
sin imagen de perfil

Concatenacion de subquerys que contienen decode

Publicado por Josue Gomez (15 intervenciones) el 21/04/2015 16:50:34
Gracias estimado, la verdad a la hora de escribir aqui el subquery se me escapo el parentesis de apertura, no sabia que al poner un alias se espera el from u otra columa, intentare y te comento.
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
sin imagen de perfil

Concatenacion de subquerys que contienen decode

Publicado por Jorge (21 intervenciones) el 21/04/2015 22:24:12
Considera siempre que el alias es un sobrenombre a todo el resultado de tu concatenación... si todo eso es un solo resultado solo debe tener un alias colocado al final.

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
sin imagen de perfil

Concatenacion de subquerys que contienen decode

Publicado por Josue Gomez (15 intervenciones) el 21/04/2015 17:04:25
Funciona a la perfeccion 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