• I know why the null value is not returned but I am puzzled by the explanation.

    "Since col2 is used in the WHERE clause, the output does not include the corresponding col1 value i.e. 4, even though no such 'not equal to NULL' condition is specified."