Сведения о вопросе

LiKIY

14:26, 14th August, 2020

Теги

Sphinx    

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

Просмотров: 275   Ответов: 2

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


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


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


Id

Field1

Field2

Field3



FieldN


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


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


Возможно ли сделать так, чтобы можно было искать совпадения по различным полям без генерации всех возможных индексов из комбинации разных полей?



  Сведения об ответе

fo_I_K

23:28, 8th August, 2020

SELECT * FROM test WHERE MATCH('@title hello @body world')


  Сведения об ответе

SILA

08:26, 22nd August, 2020

Если надо искать только по полям field1, field2 и field3, причём одну и ту-же поисковую фразу, то лучшим вариантом является такой синтаксис:
SELECT * FROM index_name WHERE MATCH('@(field1,field2,field3) поисковая фраза')

без пробелов после запятых в перечислении полей


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться