资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 面试经验 > 面试问答

Elasticsearch:“术语”,“匹配短语”和“查询字符串”之间的区别

面试问答 更新时间: 发布时间: 计算机考试归档 最新发布

Elasticsearch:“术语”,“匹配短语”和“查询字符串”之间的区别

term
查询匹配单个术语: 不分析 值。因此,不必根据所索引的内容将其小写。

如果您是

Bennett
在索引时间提供的,并且未分析该值,则以下查询将不会返回任何内容:

{  "query": {    "term" : { "user" : "bennett" }  }}

match_phrase
如果为查询字段定义了分析器,则查询将分析输入,并查找符合以下条件的文档:

  • 所有条款 必须出现在该字段中
  • 它们必须与输入值具有 相同的顺序

例如,如果您索引以下文档(

standard
在字段中使用Analyzer
foo
):

{ "foo":"I just said hello world" }{ "foo":"Hello world" }{ "foo":"World Hello" }

match_phrase
查询将仅返回第一个和第二个文档:

{  "query": {    "match_phrase": {      "foo": "Hello World"    }  }}

query_string
默认情况下,对_all字段进行查询搜索,该字段一次包含多个文本字段的文本。最重要的是,它被解析并支持一些运算符(AND / OR
…),通配符等(请参阅相关语法)。

作为

match_phrase
查询,将根据在查询字段上设置的分析器来分析输入。

不同于

match_phrase
,除非用户在输入周围使用引号,否则分析后获得的术语不必具有相同的顺序。

例如,使用与以前相同的文档,此查询将返回所有文档:

{  "query": {    "query_string": {      "query": "hello World"    }  }}

但是此查询将返回与查询相同的2个文档

match_phrase

{  "query": {    "query_string": {      "query": ""Hello World""    }  }}

关于这些查询的不同选项,还有更多要说的,请查看相关文档:

  • 术语
  • match_phrase
  • 请求参数

希望这足够清楚,将对您有所帮助。



转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/385971.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【Elasticsearch:“术语”,“匹配短语”和“查询字符串”之间的区别】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2