Преобразование значений NULL в не-NULL значения (COALESCE)

Задача

Имеются строки, содержащие NULL значения, и требуется возвратить не-NULL значения вместо имеющихся NULL.

Решение

Чтобы подставить не-NULL занчепние вместо NULL, используйте функцию COALESCE:

select coalesce(e.comm,0)
from emp e


COALESCE(E.COMM,0)
------------------
                 0
               300
               500
                 0
              1400
                 0
                 0
                 0
                 0
                 0
                 0
                 0
                 0
                 0

 14 rows selected


Обсуждение

Функия COALESCE принимает в качестве аргументов одно или более значений. Функция возвращает первое не-NULL значение из списка. В данном решении. если значение COMM NULL, то возвращается ноль. В противном случае возвращается значение COMM.