目录
1、同个字段不同值如何展示不同内容?
比如bug状态展示
SELECT
CASE
WHEN status = 'New' THEN '新建'
WHEN status = 'Fixed' THEN '已解决'
ELSE '待处理'
END AS status,
value_column AS value
FROM your_table
WHERE $__timeFilter(time_column)
ORDER BY time_column ASC;
2、SQL语句如何跟面板上的的时间联动?
使用时间宏:$__timeFilter(time_column)
:自动根据面板的时间范围生成时间过滤条件
假设表名为 your_table
,时间列名为 start_time
,以下是联动时间范围的查询语句:
SELECT * FROM your_table
WHERE $__timeFilter(start_time)
GROUP BY time
ORDER BY time;
3、grafana如何自定义设置面板时间?
在【设置】选项中找到【JSON Model】
找到time一项,默认:
最近5分钟:"from": "now-5m"
最近7天:"from": "now-7d"
表格常用功能:
4、grafana如何给表格增加跳转链接?
1)在【overrides】找到【Add filed override】
2)在【Fields with name】中找到要增加链接跳转的列
3)在【Add override property】中找到【Data links】
4)编辑要跳转的地址,使用${__data.fields.refer_id}获取当前选中行的变量
5、grafana表格如何开启筛选功能?
同上,在【Add override property】中找到【Column filter】
效果如下:
6、grafana表格如何开启隐藏某些字段?
同上,在【Add override property】中找到【Hide in table】,开关设置为开启即可隐藏该列
7、传递变量,跳转其他grafana图表
1)在【setting】中增加【Variables】
添加一个变量
2)点击图表A时,获取变量值,打开图表B
3)在图表B中设置变量生效
如果$op_name是空,则选出全量数据;如果$op_name有指定值,则根据条件筛选
select * from user_list
where 1=1 AND
CASE WHEN "$op_name" IS NOT NULL
AND "$op_name" <> ''
THEN user_name = "$op_name"
ELSE TRUE END
常见错误:
1、MySQL报错ERROR 1054 (42S22): Unknown column ‘‘root’‘ in ‘where clause‘
原因:属性的字段值需要使用单引号(’’),或者双引号("")包裹
报错:select * from user_list where user_name = $op_name
修改:select * from user_list where user_name = "$op_name"
2、query error: Error 1064 (42000): 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
原因:SQL 语句中有语法错误,可检查:引号和括号、检查保留字、检查逗号和点号、检查数据类型和函数、分号和换行