查询文档数量时很常见的操作,一般可以直接使用 count
获取文档数,但是获取到数量信息,在【分页】应用中,意味着需要查询分页然后再查询总数。
有另一种方法,可以让我们在一次查询中获取分页数据并得到总量。
在搜索时,结果中的 hits.total
信息中会包含一个整数值表示文档数。
当实际文档数小于10000时显示具体数量,当大于10000时,只显示10000并且包含另一个字段 relation
来表示是否大于10000:
而要在文档数大于10000时获取实际的数量,需要加入参数:track_total_hits
track_total_hits=true
表示显示实际的文档数,此时 hits.total
的会变成:
relatiion
为eq
表示value值等于文档数值。
对比测试
GET /search_item_stg/_search GET /search_item_stg/_search?track_total_hits=true
未经允许请勿转载:程序喵 » ElasticSearch 查询文档真实数量