Grafana 仪表板变量 - 在基于查询的变量中处理 NULL 值
Posted
技术标签:
【中文标题】Grafana 仪表板变量 - 在基于查询的变量中处理 NULL 值【英文标题】:Grafana dashboard variable - handling NULL values in Query-based variable 【发布时间】:2019-12-11 11:18:41 【问题描述】:我基于 mysql 查询创建了一个 Grafana 仪表板变量(启用了多选):
SELECT DISTINCT(my_field) from my_table
该字段有大约 12 个选项,其中一个是 NULL 值。在编辑仪表板小部件时,我包含一个类似于以下内容的 SQL 约束:
... WHERE my_field IN ($my_variable)
这几乎可以正常工作,除了 NULL。 Grafana 正在将 NULL 转换为 ''
,而 IN (...)
语句中无论如何都不支持 NULL。
关于如何处理这个以使用 NULL 的任何建议?
【问题讨论】:
【参考方案1】:你可以扩展条件:
WHERE my_field IN ($my_variable) OR my_field IS NULL;
Grafana 正在将 NULL 转换为 ''
WHERE COALESCE(my_field, '') IN ($my_variable)
【讨论】:
谢谢,这种方法的问题是在仪表板中并不总是选择 NULL 作为变量的选项。如果在仪表板下拉列表的选项列表中选择了空值,我基本上需要 IS NULL 子句是有条件的。 @radicand 还有其他选择以上是关于Grafana 仪表板变量 - 在基于查询的变量中处理 NULL 值的主要内容,如果未能解决你的问题,请参考以下文章
如何在 grafana 仪表板中查询 influxdb 以创建模板变量
在查询 where 子句中使用 Grafana 文本框面板变量
如何在 Grafana 仪表板中将显示名称设置为自定义变量?