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 
	)
相关推荐
残*影10 分钟前
如何优雅地保存MySQL数据变更历史?
数据库·mysql
hunterandroid22 分钟前
WorkManager 可靠性实战:唯一任务、重试与幂等设计
android·前端
乐观的Terry23 分钟前
3、数据库设计与领域实体
java·数据库·spring boot·spring cloud·ai编程
舞影天上33 分钟前
RuoYi-Vue-Plus Docker 部署踩坑:MySQL 中文双重编码的根因与修复
数据库
程序员老刘34 分钟前
Android 17的10个AI功能,国内用户真正能用的有几个?
android·flutter·ai编程
Wzx1980121 小时前
Redis&ES——Retriever的抽象实现
数据库·人工智能·redis·elasticsearch
G.O.G.O.G1 小时前
《LeetCode SQL 从入门到进阶(MySQL)》06(下)
数据库·sql·oracle
花开彼岸天~2 小时前
鸿蒙应用开发实战【94】— 实战多卡号场景管理最佳实践
android·华为·harmonyos·鸿蒙系统
用户41659673693552 小时前
视频源文件音频轨异常分析记录
android
zandy10113 小时前
多租户SaaS架构下的BI数据隔离与权限治理体系
数据库·架构·数据加密