[学习ES系列]-4.ElasticSearch基础交互-基础查询与高级查询
发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,基础查询POST http://127.0.0.1:9200/book/_search1.简单查询{ "query":{ "match_all":{} }}2.条件查询{
千家信息网最后更新 2025年01月22日[学习ES系列]-4.ElasticSearch基础交互-基础查询与高级查询
基础查询
POST http://127.0.0.1:9200/book/_search
- 1.简单查询
{ "query":{ "match_all":{} }}
- 2.条件查询
{ "query":{ "match":{ "title":"入门到精通" } }, "from":1, "size":5, "sort":{ "publish_date":{ "order":"asc" } }}
- 3.聚合查询
{ "aggs":{ "group_by_word_count":{ "terms":{ "field":"word_count" } }, "group_by_publish_date":{ "terms":{ "field":"publish_date" } } }}
{ "aggs":{ "total_word_count":{ "stats":{ "field":"word_count" } } }}
{ "aggs":{ "max_word_count":{ "max":{ "field":"word_count" } } }}
高级查询
1.子条件查询 又称叶子条件查询(特定字段查询所指特定的值)
- 1.1Query Context
在查询的过程中,除了判断文档是否满足查询条件外,ES还会计算一个_score来标识匹配的程度,旨在判断目标文档和查询条件的匹配程度有多好。
1.1.1全文本查询:针对文本类型(text)的数据
- --1.模糊匹配
{ "query":{ "match":{ "title":"PHP从入门到精通" } }}
会匹配PHP、从入门到精通两个关键词
- --2.习语匹配
{ "query":{ "match_phrase":{ "title":"PHP从入门到精通" } }}
- --3.多个字段模糊匹配查询
{ "query":{ "multi_match":{ "query":"PHP", "fields":["title","author"] } }}
查询title或author中包含PHP关键字
- --4.1语法查询
{ "query":{ "query_string":{ "query":"(PHP AND 入门) OR 普改" } }}
文本字段同时包含PHP和入门两个关键词或者文本字段包含普改
- --4.2查询多字段(指定字段查询)
{ "query":{ "query_string":{ "query":"PHP", "fields":["title","author"] } }}
- 1.1.2字段级别查询:针对结构化数据,如数字、日期等
- --1.指定字段精确查询
{ "query":{ "term":{ "author":"普改" } }}
- --2.范围查询
- --2.1数字范围
{ "query":{ "range":{ "word_count":{ "gte":"170000", "lte":"200000" } } }}
- --2.2日期范围
{ "query":{ "range":{ "publish_date":{ "gte":"2018-01-01", "lte":"2019-12-30" } } }}
{ "query":{ "range":{ "publish_date":{ "gte":"2019-01-01", "lte":"now" } } }}
1.2Filter Context
在查询过程中,只判断该文档是否满足条件,只有yes或者no.
(query判断yes或者no,还会_score匹配程度)
ES会对查询结果做缓存,故速度比Query要快
{ "query":{ "bool":{ "filter":{ "term":{ "author":"普改" } } } }}
2.复合条件查询(以一定的逻辑组合子查询查询)
{ "query":{ "bool":{ "must":{ "match":{ "title":"PHP从入门到精通" } }, "filter":{ "range":{ "word_count":{ "gt":170000 } } } } }, "from":1, "size":1}
查询
字段
条件
关键
文本
程度
范围
两个
关键词
数字
数据
文档
日期
过程
高级
基础
精确
会计
全文
关键字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
邢台安卓软件开发招聘
电脑软件开发是哪个学校的
中国民商法律数据库
信息网络安全等级保护申请单位
bvd数据库下载格式有哪些
激活电信卡 服务器异常
数据库课程设计目的是为了啥
钉钉软件开发推广好做吗
手机如何进入软件开发
深圳智慧园区软件开发
昆明建筑软件开发
什么是增量数据库
泰拉瑞亚怎么进攻服务器
微信加人软件开发多少钱
怎么攻击免流服务器ip
财政部 软件开发人员单价
电子商务与gui软件开发
华为云服务器和云电脑区别
吴江区直销服务器货源充足
伊犁软件开发岗怎么样
网络安全为人民创意作品
数据库查询名字相同的人
系统软件开发原则
甲方网络安全系统
中传媒计算机与网络安全学院
门禁软件开发服务
网络技术标准规范
数据库服务器停用
数据库的ssl是什么
软件开发 英语