Ответ 1
Мое мнение состоит в том, что вам следует ориентироваться на ваше использование.
Я сомневаюсь, что будет большая разница. Имейте в виду, что хотя один контрольный ориентир может показаться немного лучше, изменение данных во времени может изменить этот результат.
Также обратите внимание, что COALESCE является частью стандартного SQL с 1992 года - я не уверен, что IFNULL еще не существует.
Там хорошая статья Адама Мачанича о сравнительном анализе эквивалентного сценария - Производительность: ISNULL и COALESCE (в SQL Server). Обратите внимание на некоторые из условий получения действительного теста.