Разница между триггерами и функциями в PostgreSQL заключается в их назначении и поведении:
Таким образом, триггеры запускаются автоматически при наступлении определённого события, а функции возвращают результат после выполнения кода. 34
В PostgreSQL триггеры создаются на основе существующих функций: сначала командой CREATE FUNCTION определяется триггерная функция, затем на её основе командой CREATE TRIGGER определяется собственно триггер. 2