JeanLouis
@JeanLouis

SphinxQL и поиск по заданным полям?

Добрый вечер!


Никак не могу найти как сделать так, чтобы можно было искать по определенным полям таблицы.


Например, есть таблица вида:


Id

Field1

Field2

Field3



FieldN


Она указывается в качестве источника для индексации.


Если выполнять запросы к созданному индексу, то поиск будет производиться по всем полям стразу. Но у пользователя есть возможность указать по каким полям нужно искать, например только по Field2 и Field3.


Возможно ли сделать так, чтобы можно было искать совпадения по различным полям без генерации всех возможных индексов из комбинации разных полей?
  • Вопрос задан
  • 5689 просмотров
Решения вопроса 1
Shedar
@Shedar
SELECT * FROM test WHERE MATCH('@title hello @body world')
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Stepanow
@Stepanow
Если надо искать только по полям field1, field2 и field3, причём одну и ту-же поисковую фразу, то лучшим вариантом является такой синтаксис:
SELECT * FROM index_name WHERE MATCH('@(field1,field2,field3) поисковая фраза')

без пробелов после запятых в перечислении полей
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы