es从新手到专家官方教程地址:后续步骤 | Elasticsearch: 权威指南 | Elastic
1、根据索引(index)+类型(type)+主键(id)查询数据
GET ima_alarm_dev_index_0422/ima_alarm_dev_type_0422/3714818012-2021121692705
效果如下图:
2、根据索引+类型+_search,查询该类型下所有数据默认10条,结果全部放在hit中
GET ima_alarm_dev_index_0422/ima_alarm_dev_type_0422/_search
如下图所示:
注意:返回结果不仅告知匹配了哪些文档还包括了整个文档本身,显示搜索结果给最终用户所需的全部信息
3、接下来进行条件搜索示例
1)使用请求条件搜索t_data_alarm_receive.jqlbdm=010000的信息
GET /ima_alarm_dev_index_0422/ima_alarm_dev_type_0422/_search?q=t_data_alarm_receive.jqlbdm:010000
结果如下图所示:
2)使用查询表达式进行搜索(查询姓名为刑井海的用户)
GET /ima_alarm_dev_index_0422/ima_alarm_dev_type_0422/_search { "query": { "match": { "t_data_alarm_receive.bjrxm": "邢井海" } } }
查询结果如下图所示:
3)更负责的查询示例:如查询某个名字+某段时间范围内的数据
GET /ima_alarm_dev_index_0422/ima_alarm_dev_type_0422/_search { "query": { "bool": { "must": { "match": { "t_data_alarm_receive.bjrxm": "邢井海" } }, "filter": { "range": { "t_data_alarm_receive.fc_biz_time": { "gte": "2021-06-16 15:53:34", "lte": "2022-06-16 15:53:34" } } } } } }
结果如下图所示:
4)全文搜索:全文搜索如同相似性搜索,可以搜索某个词性匹配的(此功能暂时只适用于英文版本数据)
GET /megacorp/employee/_search { "query" : { "match" : { "about" : "rock climbing" } } }
5)短语搜索:找出一个属性中独立词语是没有问题的,此功能适用于想要精确匹配一系列单词或短语
GET /megacorp/employee/_search { "query" : { "match_phrase" : { "about" : "rock climbing" } } }
6)高亮搜索:许多应用都倾向于在每个搜索结果中 高亮 部分文本片段,以便让用户知道为何该文档符合查询条件。在 Elasticsearch 中检索出高亮片段也很容易
GET /megacorp/employee/_search { "query" : { "match_phrase" : { "about" : "rock climbing" } }, "highlight": { "fields" : { "about" : {} } } }
7)分析(聚合功能):Elasticsearch 有一个功能叫聚合(aggregations),允许我们基于数据生成一些精细的分析结果。聚合与 SQL 中的 GROUP BY 类似但更强大
举例,挖掘出员工中最受欢迎的兴趣爱好:
GET /megacorp/employee/_search { "aggs": { "all_interests": { "terms": { "field": "interests" } } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)