Для чего используется функция COALESCE в SQL?
COALESCE в SQL возвращает первое выражение из списка, которое не равно NULL. Чаще всего её используют, чтобы подставить значение по умолчанию вместо NULL или выбрать первое доступное значение из нескольких столбцов. Если все аргументы равны NULL, функция возвращает NULL.
COALESCE — стандартная SQL-функция, которая принимает список выражений и возвращает первое из них, не равное NULL. Синтаксис: COALESCE(expr1, expr2, expr3, ...). Если все выражения в списке равны NULL, результатом будет NULL.
Тип результата COALESCE определяется на основе типов её аргументов (обычно наименьший общий тип для данного диалекта СУБД). Функция вычисляет аргументы слева направо и останавливается на первом ненулевом значении, что может быть важно с точки зрения производительности и побочных эффектов выражений.
NULL (например, 0, пустая строка или текст-заглушка).SELECT, ORDER BY, WHERE, когда нужно одинаково обрабатывать NULL-значения.В этом примере, если значение столбца salary равно NULL, функция вернёт 0, иначе — само значение зарплаты. Так можно избежать проблем при вычислениях (например, суммировании), где NULL ломает результат.
Здесь COALESCE выбирает первый непустой телефон из нескольких столбцов, а если все они NULL, возвращает строку 'нет телефона'. Такой приём удобен для формирования пользовательских отчетов или витрин данных.
Во многих СУБД есть функции вроде IFNULL или ISNULL, но они, как правило, принимают только два аргумента и являются диалектными. COALESCE — часть стандарта SQL, поддерживает произвольное число аргументов и считается более переносимым решением.
Отметьте свой прогресс