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 
	)
相关推荐
我是一颗柠檬几秒前
【Java项目技术亮点】读写分离+主从延迟处理:MySQL高并发下的性能优化方案
java·分布式·mysql·性能优化
霸道流氓气质4 分钟前
MySQL 大数据量场景下的表结构与索引设计指南
数据库·mysql
Kapaseker4 分钟前
Android 线程发展shi
android·kotlin
AOwhisky7 分钟前
Redis 学习笔记(第二期):核心数据类型与消息队列实战
运维·数据库·redis·笔记·学习·云计算
lsyeei9 分钟前
MySQL常用索引
数据库·mysql
李斯维10 分钟前
Jetpack 可观察数据容器 LiveData 的高级用法
android·android jetpack·androidx
天才少年曾牛12 分钟前
Android新增服务添加selinux权限
android·java·frameworks
knighthood200113 分钟前
ros2-quick-runner插件v0.0.4版本发布
android·java·开发语言
雨辰AI15 分钟前
生产级实战|SpringBoot3 + 达梦DM9 数据库权限收敛与三权分立完整落地方案
数据库·mysql·oracle·政务
Gong-Yu16 分钟前
MySQL数据库运维——性能优化进阶1️⃣
运维·数据库·mysql·性能优化