ПОЛЕ
Синтаксис
FIELD(pattern, str1[,str2,...])
Описание
Возвращает индекс позиции строки или числа, соответствующего заданному шаблону. Возвращает 0 в случае, если ни один из аргументов не соответствует шаблону. Вызывает ошибку 1582, если не указано как минимум два аргумента.
Когда все аргументы, переданные в функцию FIELD(), являются строками, они обрабатываются как нечувствительные к регистру. Когда все аргументы являются числами, они обрабатываются как числа. В противном случае они обрабатываются как числа с плавающей точкой.
Если заданный шаблон встречается более одного раза, функция FIELD() возвращает только индекс первого вхождения. Если заданный шаблон NULL, функция возвращает 0, так как шаблон NULL всегда не соответствует.
Эта функция дополняет функцию ELT().
Примеры
SELECT FIELD('ej', 'Hej', 'ej', 'Heja', 'hej', 'foo')
AS 'Field Results';
+---------------+
| Field Results |
+---------------+
| 2 |
+---------------+
SELECT FIELD('fo', 'Hej', 'ej', 'Heja', 'hej', 'foo')
AS 'Field Results';
+---------------+
| Field Results |
+---------------+
| 0 |
+---------------+
SELECT FIELD(1, 2, 3, 4, 5, 1) AS 'Field Results';
+---------------+
| Field Results |
+---------------+
| 5 |
+---------------+
SELECT FIELD(NULL, 2, 3) AS 'Field Results';
+---------------+
| Field Results |
+---------------+
| 0 |
+---------------+
SELECT FIELD('fail') AS 'Field Results';
Error 1582 (42000): Incorrect parameter count in call
to native function 'field'
См. также
- Функцию ELT(). Возвращает N-й элемент из набора строк.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/field/