ElasticSearch查询与过滤的实用指南
在实际应用中,搜索和过滤数据是非常常见的操作。ElasticSearch作为一款强大的搜索引擎,提供了多种查询和过滤方式,下面将详细介绍几种常用的查询和过滤方法。
范围查询/过滤
范围查询/过滤在实际应用中十分常见,以下是一些常见的使用场景:
- 按数值范围过滤,例如价格、尺寸、年龄等。
- 按日期过滤,如查询2012年3月7日的事件,范围可以从03/07/12 00:00:00到03/07/12 24:59:59。
- 按词条范围过滤,例如从A到D的词条。
准备工作
- 一个正常运行的ElasticSearch集群。
- 一个名为test的索引(创建方法可参考相关基础操作)。
- 具备基本的JSON知识。
操作步骤
假设数据中有一个position整数字段,可通过以下步骤执行范围查询来过滤位置在3到5之间的数据:
curl -XPOST 'http://127.0.0.1:9200/test-index/test-type/_search?pretty=true' -d '{ "query": { "filtered": { "filter": { "range" : { "position" : { "from" : 3, "to" : 4,