如果在 FIELD() 函数中作为参数提供的字符串列表中包含 NULL 值和其他值,这会对 MySQL 输出产生什么影响?


如果在作为 FIELD() 函数参数提供的字符串列表中同时包含 NULL 值和其他值,则输出将发生显著变化。以下示例将对此进行演示

示例

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 也进行比较。

更新于:2019年7月30日

64 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.