GrafanaV7在表名称中添加变量

问题描述

我需要能够在表名中使用变量-我基本上具有用于不同类型数据的同一组表,因此我只想拥有一个仪表板并在所有类型之间进行交换,而不必总是进行设置多个相同的仪表板。

我的查询类似于:

select * from table_$variable_name;

我的可能变量列表是猫,狗,鸟

我似乎可以做到这一点,如果我只按上面显示的那样放置变量,则会出现以下错误

Error 1146: Table 'table_$variable_name' doesn't exist

如果将其用大括号括起来,则会出现此错误

Error 1064: You have an error in your sql Syntax; check the manual that corresponds to your MysqL server version for the right Syntax to use near '{bird}' at line 1

(即所选变量这次实际上是可见的)

我不确定问题是否在于表名中是否包含下划线,我也尝试在变量周围加上下划线以进行检查,但我对此没有运气。

我尝试的另一件事是逐渐添加到表名,例如 select * from table_$variable; 仍然返回错误,但是我可以看到表名开始正确地形成 Error 1146: Table 'table_bird_' doesn't exist

但是,一旦我添加下划线,该变量就不会被提取 错误1146:表'table_ $ variable_'不存在

我确定查询语法中缺少这种愚蠢的东西-任何人有任何建议吗?

使用此https://grafana.com/docs/grafana/latest/variables/templates-and-variables/供参考

解决方法

正如@arturomp 建议的那样,使用 ${var:raw} 至少在我的情况下,这是有效的解决方案。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...