如何将这个ElasticSearch查询从1.5更新到5.6?

时间:2018-10-19 20:13:21

标签: elasticsearch

我认为让我绊倒的是如何删除已过滤对象中的查询元素。这是现在的样子:

{  
   "body":{  
      "query":{  
         "filtered":{  
            "filter":{  
               "bool":{  
                  "must":[  
                     {  "term":{  "userId":"user:12345" }}
                  ],
                  "must_not":[  
                     {  "term":{  "availability":"trashed" }}
                  ]
               }
            },
            "query":{  
               "bool":{  
                  "should":[  
                     {  "query_string":{  
                           "query":"Foo bar",
                           "default_operator":"AND"
                        }
                     },
                     {  "has_child":{  
                           "type":"doctext",
                           "query":{  
                              "query_string":{  
                                 "query":"Foo bar",
                                 "default_operator":"AND"
                              }
                           }
                        }
                     }
                  ]
               }
            }
         }
      }
   }
}

通过阅读其他文章和指南,我认为,我需要做的就是摆脱“查询”和“笨蛋”,并从“应有”中删除所有内容。但是,我在新旧索引中都没有索引相同的数据,因此目前无法同时测试两者。

这是我想出的,任何建议将不胜感激:

{  
   "body":{  
      "query":{  
         "bool":{  
            "filter":{  
               "bool":{  
                  "must":[  
                     {  "term":{  "userId":"user:12345" }}
                  ],
                  "must_not":[  
                     {  "term":{  "availability":"trashed" }}
                  ]
               }
            },
            "should":[  
               {  
                  "query_string":{  
                     "query":"Foo bar",
                     "default_operator":"AND"
                  }
               },
               {  "has_child":{  
                     "type":"doctext",
                     "query":{  
                        "query_string":{  
                           "query":"Foo bar",
                           "default_operator":"AND"
                        }
                     }
                  }
               }
            ]
         }
      }
   }
}

0 个答案:

没有答案