结合两个查询的结果

时间:2018-06-19 10:46:16

标签: elasticsearch kibana querydsl

我正在使用Kibana v6.1.1并尝试在一个GET请求内进行两次不同的查询,以便使用" must"或"应该"术语不止一次。 当我在" Dev Tools"下运行此查询时在Kibana,它的工作原理。 当我想应用这个"双重查询" (当然没有GET行)"发现" - >"添加过滤器" - >"编辑过滤器" - >"编辑查询DSL",它不接受语法{}以创建“' OR'在查询之间。 这两个必须"必须"术语将被分开但保留在同一过滤器中。

GET _my_index/_search
{
  "query" : {
    "bool" : {
      "must" : [{
        ...
      }]
    }
  }
}
{}
{
  "query" : {
    "bool" : {
      "must" : [{
        ...
      }]
    }
  }
}

P.S。 使用simple_query_string似乎无法解决问题,到目前为止,我无法找到合并这两个查询的方法。

1 个答案:

答案 0 :(得分:0)

我不确定您实际上想要实现什么。如果至少minimum_should_match个必须匹配(如果没有其他条件,则有一个隐式{ "query" : { "bool" : { "should" : [ { ... }, { ... } ] } } } ,但也可以为此设置一个显式值),请使用以下代码:

Select cast (substring(Fdate,0,5)+'-'+ 
             substring(Fdate,5,2)+'-'+ 
             substring(Fdate,7,2) 
        + ' ' + 
             substring(Ftime,0,3) + ':' + 
             substring(Ftime,3,2) + ':' + 
             substring(Ftime,5,2) 
       as datetime)

如果要运行独立查询,请使用multi search