Что такое NULLIF?

Middle
313 просмотров
AFK Offer AI

NULLIF(a, b) возвращает NULL, если a = b, иначе возвращает a. Звучит странно, но полезно. Главный кейс — защита от деления на ноль: SELECT total / NULLIF(count, 0) — если count = 0, NULLIF вернёт NULL, и деление даст NULL вместо ошибки. Ещё: NULLIF(status, '') превращает пустую строку в NULL для единообразия. COALESCE и NULLIF часто работают в паре: COALESCE(total / NULLIF(count, 0), 0) — деление с fallback на 0.

Следующий вопрос

Как работает goroutine scheduling loop?