«Я ожидал получить« Записи не найдены », когда не было записей, но вместо этого я получаю нулевой результат».
Тогда сделай
SELECT SUM(dummy) FROM DUAL WHERE 1=2 HAVING COUNT(*) > 0
То есть укажите, что вы хотите возвращать сводку только там, где были рассмотрены строки.
SELECT SUM(dummy) FROM DUAL WHERE 1=2 HAVING SUM(dummy) IS NOT NULL
аналогично, но COUNT (*) вернул бы итоговую строку, если бы были только строки, для которых фиктивный элемент был нулевым, а последний - нет.