Документация - ваш друг; Вы должны это прочитать!
Он говорит:
IFNULL(expr1,expr2)
Если expr1нет NULL, IFNULL()возвращается expr1; в противном случае он возвращается
expr2.
А потом много примеров. Это эквивалентно использованию тернарного условного оператора со сравнением NULLи объектом сравнения в качестве второго операнда; что здесь не используются символы, ?и :чтобы доставить вас туда, на самом деле не имеет отношения ни к чему.
Итак, в вашем случае:
SELECT IFNULL(`id`, 0) FROM `table`
Если вы отчаялись явно указать три операнда (зачем ?!), переключитесь на IF:
SELECT IF(`id` IS NULL, 0, `id`) FROM `table`