如果只想使用ES统计符合某个查询条件的数据条数,不需要返回这些数据,那么可以构造如下DSL查询语句:
代码语言:javascript复制{'query': {
'bool': {
'must': [{'match': {'关键词': '值'}}],
}
},
'size': 0
}
其中,设置 'size':0
表示不返回数据详情。
最后得到的查询结果类似如下:
代码语言:javascript复制{'took': 4,
'timed_out': False,
'_shards': {'total': 5, 'successful': 5, 'skipped': 0, 'failed': 0},
'hits': {'total': 514777, 'max_score': 0.0, 'hits': []}}
其中 hits
下面的 total
对应了满足要求的数据总数。