Как работает COALESCE: Очередь из запасных планов.

Многие думают, что COALESCE — это просто замена NULL. Но на самом деле это выбор первого выжившего.

Представим список: COALESCE(План_А, План_Б, План_В). База идет по этому списку для каждой строки:

  1. Смотрит на План А. Если там есть данные — берет их и сразу уходит.
  2. Если в Плане А — NULL, она переходит к Плану Б.
  3. Если и там NULL — берет План В.

Пример: У нас есть контакты клиента. Мы хотим сначала позвонить, если нет телефона — написать на email, если нет email — отправить письмо голубем. SELECT COALESCE(phone, email, 'отправить голубя')

Это база в SQL. Вспомним пост про котят: там в отчете вылезали NULL. Заказчик на дашборде не хочет видеть пустоту или слово NULL, такое ему не нравится. Поэтому в данном случае мы используем COALESCE и выводим «нет данных» или «не определено».

Связи: 📌 Пост про котят, где мы встретили NULL в джойнах


В этом посте были ссылки, но мы их удалили по правилам Сетки