首页 > 解决方案 > 如何将参数绑定到 InfluxDB Python 客户端查询

问题描述

如何使用 Python 客户端将查询参数绑定到 InfluxDB 查询?

例如,我想要由InfluxDb标签“my_tag”过滤的查询结果:some_id=5 SELECT * FROM "foobar" WHERE ("my_tag"=some_id);

client = InfluxDBClient(host=my_host,port=my_port)
client.switch_database(database=my_database)

def get_results_by_id(my_id):
    results = client.query(
        query='SELECT * FROM "foobar" WHERE ("my_tag" = id)',
        params={"id": my_id}
    )
    ...
)

以此获得零结果。显然,我可以只使用字符串格式化程序,但必须有办法使用 Influx API 来完成。

标签: pythoninfluxdb

解决方案


client = InfluxDBClient(host=my_host,port=my_port)
client.switch_database(database=my_database)

def get_results_by_id(my_id):
    results = client.query(
        query='SELECT * FROM foobar WHERE my_tag=$my_tag;',
        params={"my_tag": my_id}
    )
    ...
)

推荐阅读