IS NULL
NULL means unknown / missing. WHERE marks IS NULL; students who have no marks yet. 0 is a real number. '' is an empty string. They are not NULL.
Any maths with NULL becomes NULL: marks + 1 is NULL if marks is NULL. IFNULL(marks, 0) or COALESCE(marks, 0) fills a default in the SELECT.
INSERT without a value into a nullable column stores NULL. NOT NULL columns reject that.
Trap — WHERE marks = NULL — always unknown, returns no rows. Trap: COUNT(marks) skips NULL; COUNT(*) counts rows.
On the example next to this theory: IS NULL: create two demo rows, then SELECT qty >= 2 ordered. Say which labels come back.
WHERE marks IS NULL; COALESCE(marks, 0).