From: | Gilberto Castillo Martínez <gilberto(dot)castillo(at)etecsa(dot)cu> |
---|---|
To: | yanguma <ricardo(dot)yanguma(at)gmail(dot)com> |
Cc: | postgresayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Parametro en vista |
Date: | 2009-01-27 20:33:36 |
Message-ID: | 1233088416.30440.79.camel@gilbertoc |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El mar, 27-01-2009 a las 14:45 -0500, yanguma escribió:
>
> Buenas tardes
>
> Quiero solicitarle ayuda para le creación de una vista que reciba
> parametros, estuve leyendo el tema en correos anteriores, pero no
> entiendo la solucciion o estoy bloqueado..
>
> La pregunta concreta es
>
> Tengo una vista que me obtiene los datos de una base de datos de 1
> millon de registro, esa vista tiene un campo que es el periodo, los
> informes o lo que el usuario final desea ver se base en esta consulta,
> pero siempre ve toda la información y no la que necesita, entonces
> opte por pasarle parmetros atravez de una tabla que toma los datos que
> el usuario consulta.. Esta es la forma correcta?
>
> O existe otra forma.. me la pueden explicar?
Te puedes hacer una función donde le pases de parametro el campo de
criterio a buscar y la salida los registros que realmente le interesa a
cada usuario
Algo así:
CREATE OR REPLACE FUNCTION listarcampo(periodo text)
RETURNS SETOF tu_tabla AS
$BODY$
select * from tu_tabla
where case when $1 is not null then periodo like '%' || $1 ||
'%' else true end;
$BODY$
LANGUAGE 'sql' VOLATILE;
>
> Gracias
>
From | Date | Subject | |
---|---|---|---|
Next Message | Gabriel Hermes Colina Zambra | 2009-01-27 20:35:12 | Re: pgagent |
Previous Message | Gabriel Hermes Colina Zambra | 2009-01-27 20:30:20 | Re: Parametro en vista |