0x00 簡介
InfluxDB默認以UTC時間存儲并返回時間戳,當(dāng)接收到一個時序數(shù)據(jù)記錄時危号,InfluxDB將時間戳從本地時區(qū)時間轉(zhuǎn)換為UTC時間并存儲橡疼,查詢時,InfluxDB返回的時間戳對應(yīng)的是UTC時間泪漂。InfluxDB支持通過在tz()子句中指定TZ格式的時區(qū)名字廊营,如Asia/Shanghai歪泳,將UTC時間轉(zhuǎn)換為中國本地時間萝勤,基本語法如下。
SELECT_clause ... tz('<time_zone>')
注意呐伞,該time_zone參數(shù)遵循Internet分配號碼授權(quán)機構(gòu)時區(qū)數(shù)據(jù)庫中的TZ語法(https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List)敌卓,并且需要單引號引用。
0x01 示例
? ? 通過tz()子句將時序數(shù)據(jù)的時間戳從UTC時間轉(zhuǎn)換為Asia/Shanghai時區(qū)的本地時間伶氢。
> create database monito
> use monito
Using database monito
>
> insert cpu_usage,host=server01 value=0.67 1572797280000000000
>
> select * from cpu_usage
name: cpu_usage
time? ? ? ? ? ? ? ? host? ? value
----? ? ? ? ? ? ? ? ----? ? -----
2019-11-03T16:08:00Z server01 0.67
>
> select * from cpu_usage tz('Asia/Shanghai')
name: cpu_usage
time? ? ? ? ? ? ? ? ? ? ? host? ? value
----? ? ? ? ? ? ? ? ? ? ? ----? ? -----
2019-11-04T00:08:00+08:00 server01 0.67
>
>
在示例中趟径,創(chuàng)建數(shù)據(jù)庫monitor,并在數(shù)據(jù)庫monitor中插入一條時間戳為亞洲上海時間2019-11-04T00:08:00Z的時序數(shù)據(jù)記錄癣防,然后使用select命令查詢蜗巧,發(fā)現(xiàn)顯示的時間戳為UTC時間2019-11-03T16:08:00Z,加上tz('Asia/Shanghai')子句再查詢蕾盯,顯示的時間戳為亞洲上海時間2019-11-04T00:08:00+08:00幕屹。
后記
歡迎交流討論:
微信公眾號:influxdb-dev
InfluxDB技術(shù)交流群(QQ):663274123