Informix - CONSULTA DINAMICA EN SP(INFORMIX)

   
Vista:

CONSULTA DINAMICA EN SP(INFORMIX)

Publicado por Cistian Lincopi (1 intervención) el 30/10/2009 20:55:28
Como puedo generar una consulta dinamica en INFORMIX emulando SP_EXECUTESQL del Microsoft Sql.

Actualmente estoy creando tantos selects como condiciones se me presentan, ejemplo:

create procedure sp_alumnos(carrera char(3), orden char(1))
returning decimal(7,0), char(3), char(50);
-- tod=TODAS

if carrera<>"tod" AND orden = "A" then
SELECT alum_nmat, alum_carr, alum
from alumnos
WHERE alum_carr = carrera
ORDER BY alum,alum_carr
INTO TEMP tmp1;
END IF;
if carrera<>"tod" AND orden = "C" then
SELECT alum_nmat, alum_carr, alum
from alumnos
WHERE alum_carr = carrera
ORDER BY alum_carr,alum
INTO TEMP tmp1;
END IF ;
if carrera="tod" AND orden = "A" then
SELECT alum_nmat, alum_carr, alum
from alumnos
ORDER BY alum,alum_carr
INTO TEMP tmp1;
END IF;
if carrera="tod" AND orden = "C" then
SELECT alum_nmat, alum_carr, alum
from alumnos
ORDER BY alum_carr,alum
INTO TEMP tmp1;
END IF ;

FOREACH
.
.
.
END FOREACH;
DROP TABLE tmp1;

end procedure;
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:CONSULTA DINAMICA EN SP(INFORMIX)

Publicado por Felipe de Jesús (2 intervenciones) el 17/11/2009 20:39:04
Me gustaria ver todos tus select, si me indicas de donde los puedos obtener, gracias de antemano.
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:CONSULTA DINAMICA EN SP(INFORMIX)

Publicado por Soledad Lira (3 intervenciones) el 14/08/2010 02:09:30
Los select anidados

select a
from tabla
where b in (select bebecitas from tabla2 where condicion = valorcondicion)

es mucho mas eficientes que simples conexiones con WHERE, tomenlo encuenta.. mas omenos te rebaja de 7 minutos a 1 minuto.. esta bueno.. lo probee...
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