如果我们将字符串列表中的 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 进行比较。