Как работает COALESCE: Очередь из запасных планов.
Многие думают, что COALESCE — это просто замена NULL. Но на самом деле это выбор первого выжившего.
Представим список: COALESCE(План_А, План_Б, План_В). База идет по этому списку для каждой строки:
- Смотрит на План А. Если там есть данные — берет их и сразу уходит.
- Если в Плане А — NULL, она переходит к Плану Б.
- Если и там NULL — берет План В.
Пример: У нас есть контакты клиента. Мы хотим сначала позвонить, если нет телефона — написать на email, если нет email — отправить письмо голубем. SELECT COALESCE(phone, email, 'отправить голубя')
Это база в SQL. Вспомним пост про котят: там в отчете вылезали NULL. Заказчик на дашборде не хочет видеть пустоту или слово NULL, такое ему не нравится. Поэтому в данном случае мы используем COALESCE и выводим «нет данных» или «не определено».
Связи: 📌 Пост про котят, где мы встретили NULL в джойнах
В этом посте были ссылки, но мы их удалили по правилам Сетки