InfluxDB Client可以使用query()方法查询数据,并返回JSON格式的数据。示例代码如下:

from influxdb_client import InfluxDBClient, Point, WritePrecision
from influxdb_client.client.write_api import SYNCHRONOUS

# 创建InfluxDBClient实例
client = InfluxDBClient(url='http://localhost:8086', token='my-token', org='my-org')

# 查询数据
query = 'from(bucket: 'my-bucket') |> range(start: -1h) |> filter(fn: (r) => r._measurement == "temperature")'
result = client.query_api().query(query)

# 打印查询结果
print(result)

查询结果示例:

{
    "results": [
        {
            "statement_id": 0,
            "series": [
                {
                    "name": "temperature",
                    "tags": {
                        "sensor": "sensor-1"
                    },
                    "columns": [
                        "time",
                        "value"
                    ],
                    "values": [
                        [
                            "2021-11-01T00:00:00Z",
                            22.3
                        ],
                        [
                            "2021-11-01T01:00:00Z",
                            23.1
                        ],
                        [
                            "2021-11-01T02:00:00Z",
                            22.8
                        ],
                        ...
                    ]
                }
            ]
        }
    ]
}

可以看到,查询结果是一个嵌套的JSON对象,其中最外层的'results'数组包含了查询结果的所有信息。每个'results'元素是一个包含了查询语句ID和查询结果的JSON对象。在本例中,'statement_id'为0,表示这是第一条查询语句的结果。'series'数组包含了查询结果的所有数据系列。在本例中,我们只查询了一个数据系列,即'temperature'。'name'表示数据系列的名称,'tags'包含了所有的标签,'columns'包含了所有的列名,'values'包含了所有的数据行。每个数据行是一个数组,其中第一个元素是时间戳,第二个元素是数据值。

注意,在使用InfluxDB Client查询数据时,需要先创建InfluxDBClient实例,并使用'query_api()'方法创建查询API。然后,使用'query()'方法执行查询语句,并返回查询结果。查询结果是一个包含了所有查询结果的JSON对象。可以根据需要进行解析和处理。

InfluxDB Client 查询数据返回 JSON 格式数据

原文地址: https://www.cveoy.top/t/topic/nibB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录