Функция FIELD
ищет поле, которое содержит
в себе заданный текст, и возвращает его номер
(нумерация с единицы). Текст передается первым
параметром, а поля, в которых искать - остальными
параметрами. Вместо полей могут быть строки
или числа. Если строка не найдена, возвращается
0
.
Синтаксис
SELECT FIELD(строка, поле1, поле2...) FROM имя_таблицы WHERE условие
Таблицы для примеров
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 |