ElasticSearch:查询字符串与简单查询字符串

amrnrhlw  于 2023-01-08  发布在  ElasticSearch
关注(0)|答案(1)|浏览(158)

查询字符串和简单查询字符串之间的确切区别是什么?文档中提到的唯一区别是查询字符串更高级,但在无法解析发送的查询时会引发异常。
但是,我注意到即使查询字符串中没有任何异常,查询字符串的行为也会有所不同。
这里有两个相同的查询,但是带有查询字符串的查询返回响应,而简单查询字符串返回零个文档。我想知道幕后发生了什么。

{ 
 "query": {
    "bool": {
       "must": [
        {
           "query_string": {
           "query": "Atoms for Peace",
           "default_operator": "AND"
      
        }
      }
    ]
  }
 }
}
{ 
"query": {
  "bool": {
    "must": [
      {
        "simple_query_string": {
          "query": "Atoms for Peace",
          "default_operator": "AND"
        }
      }
    ]

  }
}
}
bqjvbblv

bqjvbblv1#

您可以在搜索端点中包含explain=true查询参数,这将为您提供详细的响应,说明为您的搜索词创建了哪些标记,以及为什么两个查询的结果不同。

相关问题