IS NULL is TRUE exactly when the tested value is NULL.
NULL⇒TRUE
Read TRUE rows
The city IS NULL test has 2 TRUE rows.
TRUE rows=2
NULL-test examples are tiny finite-table transforms for IS NULL and IS NOT NULL; SQL dialect completeness, optimizer behavior, indexing, and product claims are out of scope.
Missing rows are kept
Rows with missing city values are the TRUE output rows.