A NULL join key is not equal to another NULL join key in this scoped join model.
NULL does not match NULL
Read NULL-key facts
The left table has 1 NULL-key row, and NULL-key matches are 0.
NULL matches=0
Outer-join examples are tiny finite-table transforms; SQL dialect completeness, type coercion, optimizer behavior, execution cost, indexing, and database-product claims are out of scope.
Still keep the left row
The NULL-key left row is still kept because the join is left outer.
kept then padded
Summary
NULL-key nonmatching is separate from left-row preservation.