Возврат данных из анонимного DO-блока
Глобальные переменные для сессий и транзакций
Проверяйте наличие записей в таблице с помощью count(*).
SELECT count(*) INTO _count FROM events WHERE date = '2012-01-01'; IF _count > 0 THEN .. END IF;
Используйте SUM без COALESCE
SELECT sum(salary) FROM employees WHERE department_id = 2;