基於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的查詢翻頁功能