Как обрабатывать MAX() пустой таблицы как 0 вместо NULL

Я пытаюсь выбрать максимальное значение из таблицы

SELECT MAX(cid) FROM itemconfiguration;

Однако, когда таблица itemconfiguration пуста, операторы MAX(cid) оцениваются до NULL, в то время как мне нужно число. Как справиться с этим и обрабатывать NULL как 0?

Ответы

Ответ 1

Просто используйте Coalesce или NVL для обработки NULL.

Следующий код вернет 0, если MAX(cid) равен NULL

SELECT COALESCE(MAX(cid), 0)
FROM   itemconfiguration

Ответ 2

SELECT NVL(MAX(cid), 0) FROM itemconfiguration;