Do not let the system to do extra work. Ensure that trigger procedures are executed only if there is a real need of that. Specify WHEN clause with a Boolean expression that has to be satisfied to execute the trigger.
Data Source
INFORMATION_SCHEMA only
SQL Query
SELECT trigger_schema, trigger_table, trigger_name, event_manipulation, action_orientation, action_timing, action_condition, columns
FROM
(SELECT
T. trigger_schema,
T.event_object_table AS trigger_table,
T.trigger_name,
T.action_condition,
T.event_manipulation,
T.action_orientation,
T.action_timing,
array_agg(event_object_column::text) AS columns
FROM
(SELECT * FROM information_schema.triggers WHERE event_manipulation='UPDATE') AS T LEFT JOIN information_schema.triggered_update_columns AS TUC
ON T.trigger_schema=TUC.trigger_schema AND T.trigger_name=TUC.trigger_name AND
T.event_object_table=TUC.event_object_table
GROUP BY T. trigger_schema, T.event_object_table, T.trigger_name, T.event_manipulation,
T.action_orientation,
T.action_timing, T.action_condition) AS f
WHERE (action_timing<>'INSTEAD OF' AND action_condition IS NULL)
ORDER BY trigger_schema, trigger_table, trigger_name;
Categories
This query is classified under the following categories:
Name
Description
Performance
Queries of this category provide information about indexes in a database.
Triggers and rules
Queries of this category provide information about triggers and rules in a database.