Несколько вопросов про NULL?
1) При использовании операторов =, <, >, <> - да
2) Нет. Но при этом он не является true, т.е. при использовании в WHERE или JOIN условие с ним сработает как ложное. Ну и вне БД, например, в PHP и других слабо типизированных языках он легко превращается в false
3) Странный вопрос какой-то, перевернутый. Операторы IS NULL/IS NOT NULL придумали потому, что сравнение с NULL обычными операторами работает не так, как все привыкли. Вообще, в SQL троичная логика (на примере =):
=     | TRUE    FALSE   NULL
________________________________
TRUE  | TRUE    FALSE   NULL
FALSE | FALSE   TRUE    NULL
NULL  | NULL    NULL    NULL
1) При использовании операторов =, <, >, <> - да
2) Нет. Но при этом он не является true, т.е. при использовании в WHERE или JOIN условие с ним сработает как ложное. Ну и вне БД, например, в PHP и других слабо типизированных языках он легко превращается в false
3) Странный вопрос какой-то, перевернутый. Операторы IS NULL/IS NOT NULL придумали потому, что сравнение с NULL обычными операторами работает не так, как все привыкли. Вообще, в SQL троичная логика (на примере =):
=     | TRUE    FALSE   NULL
________________________________
TRUE  | TRUE    FALSE   NULL
FALSE | FALSE   TRUE    NULL
NULL  | NULL    NULL    NULL