Это ответ на оригинальную версию вопроса.
Зачем вам использовать NULLIF()
? Просто отфильтруйте нужные строки:
UPDATE table
SET recovery_email = NULL
WHERE timestamp >= (NOW() - INTERVAL 1 DAY) AND recovery_email = '';
Вы можете поставить индекс на recovery_email
и не беспокоиться о попытках фильтрации по времени.
Или, что еще лучше, определили столбец с ограничением check
(в самых последних версиях MySQL), поэтому пустые строки не допускаются.