MySql UNION 一行转多列

背景:DataEase饼图有特定格式,并且报表要求全部使用SQL语句获取数据

原先数据格式如下,需要行转换列

转换后结果:

原理

字段1,target作为一个不存在的字段,用于命名。
字段2,count字段是关键,将查询结果命名为统一名称,实现行转列。
UNION 拼接三句一样的SQL语句

更改后SQL

bash 复制代码
( SELECT "车位总数" AS 'target', total_num AS "count" FROM park_free_space_num ORDER BY report_time DESC LIMIT 1 ) UNION 
( SELECT "已使用车位" AS 'target', (total_num - free_space_num) AS "count" FROM park_free_space_num ORDER BY report_time DESC LIMIT 1 ) UNION
(
	SELECT
		"剩余车位" AS 'target',
		free_space_num AS "count" 
	FROM
		park_free_space_num 
	ORDER BY
		report_time DESC 
	LIMIT 1 
	)
相关推荐
王ASC35 分钟前
JDBC使用p6spy记录实际执行SQL方法【解决SQL打印两次问题】
数据库·sql
一直要努力哦3 小时前
Redis最终篇分布式锁以及数据一致性
数据库·redis·缓存
wqq_9922502773 小时前
ssm面向品牌会员的在线商城小程序
数据库·小程序
sunly_5 小时前
Flutter:AnimatedPadding动态修改padding
android·flutter
呼啦啦呼啦啦啦啦啦啦5 小时前
在win10环境部署opengauss数据库(包含各种可能遇到的问题解决)
数据库
苹果醋35 小时前
前端面试之九阴真经
java·运维·spring boot·mysql·nginx
不是二师兄的八戒5 小时前
MYSQL索引优化
mysql
诸神黄昏EX5 小时前
Android 常用命令和工具解析之GPU相关
android
顾北川_野5 小时前
Android 布局菜单或按钮图标或Menu/Item设置可见和不可见
android
练习本5 小时前
android 动画原理分析
android