MySQL FIELD 函数是字符串函数之一,它通过查找其余表达式(以第一个参数指定)来返回字符串的索引位置。如果其中的所有参数都是整数,则它们将被视为数字进行比较。如果它们是字符串,则它们将与句子或单词进行比较。
字符串 FIELD 函数的基本语法如下所示
SELECT FIELD(Str, Str1, Str2,....,StrN) FROM Source
上述语法通过根据 Str1 到 StrN 进行检查,返回 Str 的索引位置。例如,ELT('Hello','Hi','Hello')返回 2。
MySQL FIELD 函数示例
它返回指定字符或单词的索引位置。以下查询显示了使用此函数进行操作的各种方式。
-- Though the position 1 start with A, it is not equal to A
SELECT FIELD('A', 'ABC', 'DEF', 'G', 'H', 'I');
SELECT FIELD('MySQL', 'Learn', 'MySQL', 'Server', 'at', 'tutorialgateway.org');
SELECT FIELD('tutorialgateway.org', 'Learn', 'MySQL', 'Server', 'at', 'tutorialgateway.org');
-- It returns 0 because there is no 'at'
SELECT FIELD('at', 'Learn', 'MySQL', 'Server');
-- It will return the index position of First Occurence
SELECT FIELD('MySQL', 'Learn', 'MySQL', 'Server', 'at', 'MySQL');

让我向您展示如果我们指定整数和 MySQL NULL 值作为此 方法 的参数会发生什么。
SELECT FIELD('2', '12', '13', '2', '15', '19');
SELECT FIELD(2, 12, 13, 2, 15, 19);
SELECT FIELD(2, 22, 222, 2222);
SELECT FIELD(NULL, 'Learn', NULL, 'MySQL', 'Tutorial');
