Функция FIELD

Функция FIELD ищет поле, которое содержит в себе заданный текст, и возвращает его номер (нумерация с единицы). Текст передается первым параметром, а поля, в которых искать - остальными параметрами. Вместо полей могут быть строки или числа. Если строка не найдена, возвращается 0.

Синтаксис

SELECT FIELD(строка, поле1, поле2...) FROM имя_таблицы WHERE условие

Таблицы для примеров

таблица texts
id
айди
field1
поле1
field2
поле2
field3
поле3
1 строка1 строка2 строка3
2 строка3 строка2 строка1
3 строка2 строка1 строка3

Пример

Давайте с помощью FIELD найдем номер поля со значением 'строка1':

SELECT *, FIELD('строка1', field1, field2, field3) as number FROM texts

Результат выполнения кода:

id
айди
field1
поле1
field2
поле2
field3
поле3
number
номер поля
1 строка1 строка2 строка3 1
2 строка3 строка2 строка1 3
3 строка2 строка1 строка3 2

Смотрите также

  • функцию ELT,
    которое выбирает поле по его номеру
  • функцию FIELD,
    которое выбирает поле по его содержимому
  • функцию GREATEST,
    которая находит максимальное из значений
  • функцию LEAST,
    которая находит минимальное из значений