On Thursday, April 13, 2023, Ciprian Craciun <ciprian(dot)craciun(at)gmail(dot)com>
wrote:
>
> create or replace rule propagate_x_and_d as on update to x do also
> update y set x = new.x, d = new.d where y.x = old.x;
>
> As seen above, although the rule correctly propagates the change to
> the `x` column, it fails to use the new value for the `d` column, but
> instead uses the previous one.
>
ALSO rules behave like before triggers, not after triggers. The original
command is appended to the end of the list of commands, not the start.
David J.