запрос на совпадение возвращает точные значения только вasticsearch - PullRequest
0 голосов
/ 13 мая 2019

У меня есть следующие документы:

    {
        "_index": "testrest",
        "_type": "testrest",
        "_id": "sadfasdfw1",
        "_score": 1,
        "_source": {,
            "s_item_name": "Create",
            "request_id": "35",
            "confidence": "0.5",
        }
    },
    {
        "_index": "testrest",
        "_type": "testrest",
        "_id": "asdfds",
        "_score": 1,
        "_source": {,
            "s_item_name": "Update",
            "request_id": "35",
            "confidence": "0.3333",
        }
    },

Я пытаюсь получить результаты для request_id из 35 и их значений достоверности.

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

А если ввод 0.5, то только первый документ, а если 0.3 только второй документ.

Вот чтоЯ пытался:

 {
  "query": { 
    "bool": { 
      "must": [ 
        { "match":  { "confidence_score": "0.33" }}
      ],
      "filter": {
        "term": {
            "request_id": "35"
        }
      }
    }
  }
}

Это дает 0 результатов.Поскольку для этого требуются только точные значения, например 0.5 или 0.3333.

, я подумал, что match работает вместо term.

Как сделать запрос похожим наLIKE оператор в SQL?

1 Ответ

0 голосов
/ 13 мая 2019

Например, я бы посоветовал вам взглянуть на тип wildcard, prefix or match_phrase в режиме упругого поиска или, если вы используете последнюю версию, вы можете написать оператор SQL с помощью плагина ES.

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