Функция - это хранимый объект, который производит указанные действия по факту явного вызова, и возвращает вычисленный результат, тип которого описан в тексте функции. Код функции может также модифицировать и другие объекты.
Триггер - это хранимый объект, который описывает реакцию на указанное событие. Обычно это событие изменения данных (удаление, вставка, обновление данных таблицы), реже (и не в каждой СУБД поддерживается) событие изменения метаданных (создание, изменение или удаление хранимых объектов или модификация их свойств). Данная реакция заключается в выполнении соответствующего кода (триггерной процедуры либо триггерной функции, зависит от СУБД). Выполняемый код может модифицировать как сами изменяемые объекты, действие над которыми вызвало срабатывание триггера (т.е. модифицировать выполняемые модификации), так и другие объекты. Триггер сам по себе ничего и никуда не возвращает, триггерная процедура тоже ничего не возвращает, триггерная функция - возвращает обновлённое состояние объекта, действие с которым вызвало срабатывание триггера.