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

Responder a