Упругий поиск 1.7 - полный поиск лайков как SQL - PullRequest
0 голосов
/ 27 июня 2019

Я использую старую версию упругого поиска, и я не могу найти способ разрешить полный поиск, такой как sql: '%%'

Я должен искать неизвестные данные, чтобы «столбцы» не были известны.

Ex. У меня есть эти столбцы объявление пример строки:

source,dest,message
eth0, eth1, DELIVERY 3015801: SUCCESS: DID

В поисковой форме пользователь напишет что-то вроде этого:

+message:"delivery"
or
+message:"delivery" and +source:"eht0"

Строка возвращается успешно. К сожалению, если они пишут:

+message:"success"

он не возвращает строки из-за ":"

Мне нужно разрешить пользователю писать что-то вроде:

+message:"success*"

Это отправленный запрос. У меня есть фильтр временного диапазона, а затем запрос:

{
  "query": {
    "filtered": {
      "filter": {
        "bool": {
          "must": [
            {
              "range": {
                "@timestamp": {
                  "from": 1561615860000,
                  "to": 1561619519000
                }
              }
            }
          ]
        }
      },
      "query": {
        "bool": {
          "should": [
            {
              "query_string": {
                "query": "+message:\"success\""
              }
            }
          ]
        }
      }
    }
  },
  "sort": [
    {
      "@timestamp": {
        "order": "desc"
      }
    }
  ]
}

Есть ли способ перевести мой текстовый поиск в что-то вроде sql

message like 'success%'

Спасибо.

1 Ответ

0 голосов
/ 27 июня 2019

Это анализируемое или не анализируемое поле?Возможно, запрос префикса - это то, что вам нужно для этого.

Но обычно:

  • Эта версия более чем мертвая.Пожалуйста, обновите.
  • Это не реляционная база данных.Если вы попытаетесь перевести понятия 1: 1, вы не сможете извлечь из этого максимальную пользу.Документация или курсы помогут вам перейти к правильному поиску и отказаться от поиска LIKE.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...