如果我们将字符串列表中的 NULL 和其他值组合起来,作为 FIELD() 函数中的参数提供,会对 MySQL 输出产生什么影响?

mysqlmysqli database

如果我们将字符串列表中的 NULL 和其他值组合起来,作为 FIELD() 函数中的参数提供,输出将发生显著变化。以下示例将对此进行演示

示例

mysql> Select FIELD('good','Ram','is','good','boy');
+---------------------------------------+
| FIELD('good','Ram','is','good','boy') |
+---------------------------------------+
|                                     3 |
+---------------------------------------+
1 row in set (0.00 sec)

从上面的输出中我们可以观察到,搜索字符串"good"的索引号是 3。现在,如果我们在字符串列表中添加 NULL,那么输出将发生显著变化,如下所示 −

mysql> Select FIELD('good','Ram','is',NULL,'good','boy');
+---------------------------------------------+
| FIELD('good','Ram','is',NULL,'good','boy')  |
+---------------------------------------------+
|                                           4 |
+---------------------------------------------+
1 row in set (0.00 sec)

这意味着 MySQL 也将搜索字符串与 NULL 进行比较。


相关文章