grafana 学习 - 柱状图

grafana 学习 - 柱状图(mysql)

样式 1

grafana 学习 - 柱状图

返回的数据格式( table 样式):

+------------+------------+--------+----------+----------+----------+--------+
| time       | metric     | 待支付 | 部分支付 | 支付成功 | 支付取消 | 已退款 |
+------------+------------+--------+----------+----------+----------+--------+
| 1634745600 | 2021-10-21 | 0      | 0        | 0        | 0        | 1      |
| 1635177600 | 2021-10-26 | 0      | 0        | 0        | 0        | 5      |
| 1635350400 | 2021-10-28 | 0      | 0        | 0        | 0        | 3      |

sql 样式, 需要进行转列:

SELECT
	tor.time,
	tor.metric,
	sum(tor.`待支付`) as '待支付',
	sum(tor.`部分支付`)as '部分支付',
	sum(tor.`支付成功`) as '支付成功',
	sum(tor.`支付取消`) as '支付取消',
	sum(tor.`已退款`)  as '已退款'
FROM
(
SELECT
    UNIX_TIMESTAMP(date_format(create_time,'%Y-%m-%d')) AS time,
		date_format(create_time,'%Y-%m-%d') AS metric,
		IF(order_status=1, count(*),0) as '待支付',
    IF(order_status=2, count(*),0) as '部分支付',
		IF(order_status=3, count(*),0) as '支付成功',
		IF(order_status=4, count(*),0) as '支付取消',
		IF(order_status=5, count(*),0) as '已退款'
FROM
	t_order
	GROUP BY time
	ORDER BY time asc
) tor
	GROUP BY time
	ORDER BY time asc
	

返回数据格式( table 样式):

+------------+-----+
| metric     | cnt |
+------------+-----+
| 已退款     | 588 |
| 成功       | 439 |
| 部分支付   |  15 |
| 取消(关闭) |  66 |
| 待支付     |   2 |
+------------+-----+

样式 2

grafana 学习 - 柱状图

SELECT
		CASE
			order_status 
			WHEN 1 THEN
			'待支付' 
			WHEN 2 THEN
			'部分支付' 
			WHEN 3 THEN
			'成功' 
			WHEN 4 THEN
			'取消(关闭)' 
			WHEN 5 THEN 
			'已退款' ELSE '未知' 
		END AS metric,
	count(*) cnt 
FROM
	t_order 
	where
	$__timeFilter(create_time)
GROUP BY 	order_status 
ORDER BY 	create_time ASC

grafana 学习 - 柱状图

样式选择 水平

上一篇:idea application.properties图标显示异常(无小树叶)


下一篇:JSON协议中的status总结