A statement level trigger is basically a notification that the table has
been touched. You do not have access to the new or old tables.
You can also write a DO ALSO rule on the table, which will accomplish
what you want.
Joseph Shraibman wrote:
I have a trigger that updates a count table, based on status. The count
table looks like this:
key status count
a 1 300
a 2 400
b 1 100
b 2 200
The problem is that for large updates when I do "UPDATE table SET status
= 1 WHERE status = 2 and key = 'a';" the row level trigger fires for
each row updated, decrementing the a 2 row and incrmenting the a 1 row.
For large updates this really slows things down.
Question #1: how do I speed this up? I need a way to run a trigger on
all rows at once.
Q #2: how do satement level triggers work? The examples in the pg docs
only show row level triggers.