如何在ElasticSearch中使query_string搜索精确短语

如何在ElasticSearch中使query_string搜索精确短语,第1张

如何在ElasticSearch中使query_string搜索精确短语

您需要查看的是正在使用的分析仪。如果您未指定,Elasticsearch将使用标准分析器。在大多数使用纯文本输入的情况下,它非常有用,但不适用于您提到的用例。

标准分析器将执行的 *** 作是将字符串中的单词拆分,然后将其转换为小写字母。

如果要匹配整个字符串“ Classe A”并将其与“ Classe
B”区分开,则可以使用关键字分析器。这样会将整个字段保留为一个字符串。

然后,您可以使用匹配查询,该查询将返回您期望的结果。

创建映射:

PUT vehicles{  "mappings": {    "vehicle": {      "properties": {        "model": {          "type": "string",          "analyzer": "keyword"        }      }    }  }}

执行查询:

POST vehicles/_search{  "query": {    "match": {      "model": "Classe A"    }  }}

如果要使用

query_string
查询,则可以将运算符设置为
AND

POST vehicles/vehicle/_search{  "query": {    "query_string": {      "query": "Classe B",      "default_operator": "AND"    }  }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4902127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存