SQL Dinámico

jazz- Necesito ayuda urgente
03 de Octubre del 2003
Tengo una tabla, y tengo que hacer un procemdimiento que devuelva una columna u otra dependiendo de un parámetro, que tiene que tener el nombre de la columna a devolver (o sea el campo en esa columna), pero el problema es que no me deja, siempre me devuelve el valor de la variable (el nombre de la columna) y necesito que lo haga bien y no sé como.

ESPERO VUESTRA AYUDA URGENTE, GRACIAS.

Maria
03 de Octubre del 2003
Se me ocurre que le pases un parámetro al procedimiento y en la select del procedimiento saques la columna que quieres con un decode :
decode(:parametro,\'columna1\',columna1 ,
\'columna2\',columna2)

ronald
03 de Octubre del 2003
tambien puede hacer lo siguiente:

fr_ruta(:ruta1); -- de este modo le pasas el parametro al procedimiento fr_ruta;

y luego en el procedimiento declaras la variable como in out asi:

PROCEDURE fr_ruta(ruta IN OUT VARCHAR2) IS
for i in(SELECT ruta
FROM gn_ruta
where cod_ruta = 1)loop;
ruta := ruta;
end loop;
end;

ronald
03 de Octubre del 2003
PROCEDURE fr_ruta(ruta IN OUT VARCHAR2) IS
for i in(SELECT ruta
FROM gn_ruta
where cod_ruta = 1)loop;
ruta := i.ruta;
end loop;
end;


se me paso colocarle la I.

espero te ayude

saludos desde venezuela