| From: | Luis Rodrigo Gallardo Cruz <rodrigo(at)nul-unu(dot)com> |
|---|---|
| To: | pgsql-es-ayuda(at)postgresql(dot)org |
| Subject: | Re: SQL Dinámica |
| Date: | 2006-04-20 23:31:40 |
| Message-ID: | 20060420233140.GD3041@mail.interservice.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-es-ayuda |
On Thu, Apr 20, 2006 at 04:09:54PM -0500, Gunnar Wolf wrote:
> daly santana sanchez dijo [Mon, Apr 17, 2006 at 05:19:59PM +0100]:
> > Hola!
> > Quiero hacer una consulta dinámica, en un procedimiento almacenado.
> > La consulta es bastante sencilla: select id,nombre from tabla where id in(1,2,4,7,9);
> > los valores: (1,2,4,7,9); los debo pasar por parámetro. lo estoy pasando
> > como ristra(varchar)
> >
> > la idea es poder ejecutar la select según los parámetros recibidos por parámetros.
> > 'select id,nombre from tabla where id in (' || parametro || ')';
> > He probado a poner la instrucción con comillas simples en un cursor pero
> > no funciona.
> > Sabeis como puedo crear la consulta de forma dinámica.
> > Saludos
¿Una función que parta la cadena y la regrese como set?
Pseudocódigo:
function vuelveSet(string)
for item in split(srting)
return next item
end for
Y luego
select * from tabla where id in vuelveSet(consulta)
--
Rodrigo Gallardo PGP Key ID: ADC9BC28
Fingerprint: 7C81 E60C 442E 8FBC D975 2F49 0199 8318 ADC9 BC28
http://www.nul-unu.com http://www.nul-unu.com/blogs/elucubrando
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Leonel Nunez | 2006-04-20 23:37:42 | Re: Es posible un Link entre Oracle y Postgresql? |
| Previous Message | Alvaro Herrera | 2006-04-20 21:47:16 | Re: Bug ejecutando initdb (CVS version) |