Concept Flow - Row-level vs statement-level triggers
Trigger Event Occurs
Is Trigger Row-level?
No→Execute Statement-level Trigger Once
Yes
For Each Affected Row
Execute Row-level Trigger
End of Trigger Execution
When a trigger event happens, PostgreSQL checks if the trigger is row-level or statement-level. Row-level triggers run once per affected row, statement-level triggers run once per statement.