1.前言
昨天,学习了组合查询的查询方式。今天来看看全文查询这一章节拥有哪些神奇的查询方法
2.各种全文查询方式演练
2.1 intervals 查询 (间隔查询?)
查询体结构
"intervals":{"查询的字段":{"match":{ 各自的参数},"prefix":{},"wildcard":{},"fuzzy":{},"all_of":{},"any_of":{}}}
间隔查询的作用: 可以规定查询内容的各个词项 在 文档中的一个间隔和先后顺序。
2.1.1match 查询

有ordered:true,搜索面袋它能出来,搜索 袋面呢???
搜袋面是没有的。
ordered:true : 分词后 面 袋, 两个的位置一定是 面 前 袋后 。。
2.1.2 prefix查询
2.1.3wildcard查询 通配符查询
2.1.4模糊查询
2.1.5 all_of 查询 any_of查询
里面会规定一个或多个 intervals 规则 即 intervals 的一个数组。 all_of是吗满足 intervals中的所有, any_of是任一满足即可
匹配酸菜,酸菜必须紧挨着,接着要在酸菜后面有一个 牛绒面,或 cold poridge 
2.2match查询(匹配查询)
这个查询我要好好的整理一下,我一定要说明白。
match查询的流程: 用户输入查询内容, 查询内容分词, 匹配上的文档查询出来。
请求体结构
GET /_search{"query": {"match" : {"字段名" : {"query" : "搜索内容","analyzer":"选取搜索内容的分词器","fuzziness":"模糊搜索的,最大编辑距离一般AUTO",其他参数用到时看文档}}}}
2.3multi_match 多匹配查询
在用户搜索商品时,你也不知道用户输入的是 商品名称 还是店铺名称 还是 …. 嘿嘿嘿
所以,应该指定多个自字段
2.4 match_bool_prefix
2.5 match_phare
从分词结果中创建短语搜索 。不是单个词搜索
搜索 xx开头的短语
2.6Query String
搜索 Apple 或 统一 为词条 分词后全文检索 。 针对各个字段
2.7Match_all
查询所有
3.精准查找
3.1exist
1.查找存在某一个字段的文档
GET /_search{"query": {"exists": {"field": "字段名"}}}
3.2fuzzy
模糊搜索
GET /_search{"query": {"fuzzy": {"字段名": {"value": "模糊的字段值"}}}}
3.3IDs
每个文档又个_id, 可以指定查询
3.4Prefix
这个我解释一下,不是字段的前缀,而是 字段分词后的 各个词项 是否又 和 指定相同的前缀
3.5Range
指定范围
GET /_search{"query": {"range" : {"sales" : {"gte" : 10,"lte" : 20}}}}
