grafana是一个比较流行的前端图表展示软件,最近有朋友在使用grafana的table列表进行数据展示时,发现无法很多以0开头的数据在展示的时候会自动把0去掉,比如:固定电话话码(0571xxx、0378xxx、021xxxx)、股票代码、物料编码等都会存在这样的问题,虽然在数据库里录入的时候选择的是string型,不过在页面展示的时候被当做int型进行处理了,这里总结下这个问题。

一、数据源与SQL代码

数据源的配置这里就不再单独列出,因为其grafana支持的数据源还是比较多的,这里以最常见的mysql为例好了,配置好后,通过笔型图标点选后切换为直接的SQL格式,由于这里只是表格展示,也不涉及时间序列,所以这里选择了

grafana-mysql
grafana-mysql

同时在右边的panel界面里需要注意选择为table,见下图:

grafana-plane
grafana-plane

上面的操作完成后,正常情况下就可以看到图表了,不过只要是数字相关的都被按int型进行处理,这时候会遇到最上面提到的前面有0会被去掉的问题。

二、数据格式设置

想要修改输出的格式可以通过Field 和 overrides 两部分完成修改,前面Field部分可以设置显示的计量单位,overrides可以显示输出的格式,比如像上面提到的string型显示Int型的问题,我们就可以选择以json view的格式输出,如下:

grafana-overrides
grafana-overrides

有多个字段可以修改多个字段,最终的输出结果类似如下:

grafana-json-view
grafana-json-view

三、导出和导入

配置好的内容为避免后需配置的麻烦,可以进行导出导入,导出的方法是通过view查看— share分享 — export导出:

grafana-export-share
grafana-export-share

导入就更简单,左边栏加号在dashboard下面有import导入项,选择对应的json文件导入即可。