Как искать фразу в текстовом поле в SOLR? - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть это поле в моей базе данных SOLR.

enter image description here

Я хочу вытащить все записи, которые содержат все слово North Korea в поле nk_title.

Прочитав SOLR Docs , я попытался

nk_title:*North Korea*

Но это дает мне ошибку

  "error": {
    "msg": "undefined field text",
    "code": 400
  }

Я пытался

nk_title:"North Korea"

Но это дает мне только такие результаты, как

Talk about "Threat from North Korea" Problems
Deceptive Theory of "Threat from North Korea"

Означает, что возвращает результаты, содержащие слово North Korea с двойными кавычками.

1 Ответ

0 голосов
/ 03 сентября 2018

1-й) Похоже, в вашей конфигурации / схеме solr есть ошибка конфигурации. Где-то вы использовали поле с текстом имени, но никогда не определяли поле с таким именем. Имейте в виду, что text обычно является FieldType по умолчанию, а не именем поля.

2)

Означает, что возвращает результаты со словом Северная Корея с двойными кавычками.

Если показанное поведение правильное или нет, зависит от ваших настроек. Взгляните на свой schema.xml, как nk_title маркируется. Это также зависит от ваших настроек обработчика поиска. Если вы используете стандартный токенизатор (включая разделение на пробелы) и ваш обработчик поиска делает AND для всех поисковых терминов, то вы также найдете следующую строку: South Korea different from North Canada

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...