MySQL中的运算符 <=>是什么?

这是MySQL中<=>运算符的用法。

情况1

该运算符类似于=运算符,即当值相等时,结果将为true(1),否则为false。

在第一种情况下,=和<=>运算符的工作方式相同。

情况二

每当我们将任何值与NULL比较时,<=>运算符将给出值0,而当我们与NULL <=> NULL比较时,则返回1。

对于=运算符,则不会发生。每当我们将任何值与NULL比较时,它都会返回NULL。如果我们将NULL与NULL进行比较,则仅返回NULL。

这是上述两种情况的示例。查询如下-

mysql> SELECT 10 <=> 10, NULL <=> NULL, 10 <=> NULL;

这是输出。

+-----------+---------------+-------------+
| 10 <=> 10 | NULL <=> NULL | 10 <=> NULL |
+-----------+---------------+-------------+
|         1 |              1|            0|
+-----------+---------------+-------------+
1 row in set (0.00 sec)

查看上面的输出,NULL <=> NULL返回1,而不是NULL。

现在让我们来看一个=运算符的示例。查询如下-

mysql> SELECT 10 = 10, NULL = NULL, 10 = NULL;

这是输出。

+---------+-------------+-----------+
| 10 = 10 | NULL = NULL | 10 = NULL |
+---------+-------------+-----------+
|       1 |        NULL |      NULL |
+---------+-------------+-----------+
1 row in set (0.00 sec)

查看上面的输出,NULL = NULL返回NULL。