Re: Modificar WHERE en rule
- From: Gilberto Castillo Martínez <gilberto(dot)castillo(at)etecsa(dot)cu>
- To: Oswaldo Hernández <listas(at)soft-com(dot)es>
- Cc: pgsql-es-ayuda(at)postgresql(dot)org
- Subject: Re: Modificar WHERE en rule
- Date: Tue, 30 Sep 2008 08:33:06 -0400
- Message-id: <1222777986.5968.48.camel@gilbertoc> <text/plain>
Oswaldo:
Se me ocurre que te crees un par de vista y dada la condición que
deseas ... ejecutas una o la otra.
Saludos,
Gilberto.
El mar, 30-09-2008 a las 13:46 +0200, Oswaldo Hernández escribió:
> Hola,
>
> Tengo un caso un poco especial que me gustaria saber si es posible hacerlo utilizando rules o de
> cualquier otra forma. Intentaré explicarme:
>
> . Una tabla:
>
> create table tabla (
> a integer
> );
>
> . Una vista sobre la tabla que 'prepara los datos'
>
> create view v_tabla as
> select
> a,
> prepara_datos(a) as a_preparado
> from tabla;
>
> . Una aplicacion que monta automaticamente las consultas y realiza el siguiente query
>
> select
> a_preparado
> from v_tabla
> where
> a_preparado = 10;
>
> El problema es que necesitaria que, mediante una rule, se modificara la clausula where para que esta
> se aplicara sobre el campo 'a' en vez de sobre el campo 'a_preparado'. Es decir, que al ejecutar el
> query anterior lo que realmente se ejecute sea:
>
> select
> a_preparado
> from v_tabla
> where a = 10;
>
> He estado leyendo la documentacion sobre rules, pero no veo que se pueda modificar el where para
> subtituir el campo sobre el que se realiza la condición.
>
> ¿Hay alguna posibilidad?
>
>
> Gracias.
Home |
Main Index |
Thread Index