Эластичный поиск, запрос на основе другого запроса - PullRequest
0 голосов
/ 09 января 2019

Я хочу выполнить запрос, а затем использовать результаты для выполнения другого запроса
чтобы очистить:
Я хочу выполнить запрос и выбрать идентификаторы, а затем использовать эти идентификаторы, чтобы найти некоторых пользователей, например,
SELECT * FROM сообщений WHERE user_id IN (SELECT id FROM users WHERE id IN (1,2,3,4,...)) в sql

1 Ответ

0 голосов
/ 09 января 2019

Вы можете отфильтровать результаты, используя строку запроса DSL

В следующем примере я отфильтровал результат на основе значения result_type

А затем сгруппировал значения

пример

GET .ml-anomalies-.write-high_request_time/_search
{
  "size": 0,
  "query": {
   "query_string": {
     "query": "result_type: model_plot OR result_type:bucket"
   }
  }, 
  "aggs": {
    "NAME": {
      "terms": {
        "field": "result_type",
        "size": 10
      }
    }
  }
}

Вы можете попробовать ту же команду в следующем демонстрационном окне https://demo.elastic.co/app/kibana#/dev_tools/console?_g=()

...