Frank Joerdens <frank(at)joerdens(dot)de> writes:
>> What's happening is that "new.id" is effectively still NULL at the point
>> where the rule is processed, so the rule WHERE condition fails. I'm not
>> sure why you're bothering with that WHERE condition anyway ...
> Without the WHERE condition, all rows are affected by the update, and
> not just the newly inserted one.
I was speaking of the WHERE new.id > 0 part. However, given that you
want to affect only the newly-inserted row, ISTM you'd be a lot better
off with a trigger instead of a rule.
regards, tom lane