基于InfluxDB实现分页查询功能
** InfluxDB作为时序数据库中的翘楚,应用范围非常广泛,尤其在监控领域。**
最近做了一个功能,将InfluxDB中的数据查询出来后,在前台分页展现,比如每页10条,一共100页,可以查看首页、末页,进行翻页:前页、后页等。
InfluxDB是时序数据库,因此时间列很重要,但是要进行分页查询的话,研究了一下,也很方便,不需要查询出来后进行内存分页,直接进行数据库端分页就行:
1.查询总条数
SELECT COUNT(某一个Filed列) FROM measurement WHERE 时间范围
2.查询指定页指定条数
假设前台传过来的页数字段是page,每页条数字段是rows,那么查询指定页指定条数可以这样写:
SELECT time,Field列 FROM measurement WHERE 时间范围 LIMIT rows OFFSET (page - 1)*rows
通过以上两条查询SQL,就能很容易搞定InfluxDB的查询翻页功能