Skip site navigation (1) Skip section navigation (2)

RE: Modificar WHERE en rule

From: MIGUEL CANCHAS <mcanchas(at)tsr(dot)com(dot)pe>
To: 'Oswaldo Hernández' <listas(at)soft-com(dot)es>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: RE: Modificar WHERE en rule
Date: 2008-09-30 14:01:29
Message-ID: 410117BB01F4D611B73A00010331DD2404B5354B@tsnt.tsr.com.pe (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
-----Mensaje original-----
De: Oswaldo Hernández [mailto:listas(at)soft-com(dot)es]
Enviado el: Martes, 30 de Septiembre de 2008 06:46 a.m.
Para: pgsql-es-ayuda(at)postgresql(dot)org
Asunto: [pgsql-es-ayuda] Modificar WHERE en rule


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.
-- 
*****************************************
Oswaldo Hernández
oswaldo (@) soft-com (.) es
*****************************************
PD:
Antes de imprimir este mensaje, asegúrese de que es necesario.
El medio ambiente está en nuestra mano.
--
TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo
agradecerán
******************************************

Explicate un poco mejor :
Dices : 
. Una aplicacion que monta automaticamente las consultas y realiza el
siguiente query

     select
         a_preparado
     from v_tabla
     where
         a_preparado = 10;

Aplicación ? o un query en POSTGRESQL ?

Cuando tengo ese tipo de dificultades prefiero hacerlo desde mi aplicación y
no desde la BD.
Miguel Canchas

Responses

pgsql-es-ayuda by date

Next:From: postgres Emanuel CALVO FRANCODate: 2008-09-30 14:13:47
Subject: Re: Modificar WHERE en rule
Previous:From: Oswaldo HernándezDate: 2008-09-30 13:54:29
Subject: Re: Modificar WHERE en rule

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group