MySql <> NULL和IS NOT NULL之间的区别

Raj*_*jat 2 mysql sql

在我的数据库中有一个varchar(255)列,对于某些记录,它包含空值,当我解雇它时

SELECT * FORM my_table where some_column <> NULL;
Run Code Online (Sandbox Code Playgroud)

没有任何回报

但什么时候被解雇了

SELECT * FORM my_table where some_column IS NOT NULL;
Run Code Online (Sandbox Code Playgroud)

我得到了想要的记录

你能解释一下它们之间的主要区别以及何时使用<>和!=运算符.

Jua*_*uan 6

来自Mysql 8参考:

您不能使用算术比较运算符(如=,<或<>)来测试NULL.因为与NULL进行任何算术比较的结果也是NULL,所以无法从这种比较中获得任何有意义的结果.