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 
	)
相关推荐
Flying pigs~~16 小时前
RAG智慧问答项目
数据库·人工智能·缓存·微调·知识库·rag
misL NITL16 小时前
mysql之如何获知版本
数据库·mysql
许彰午16 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
liang_jy17 小时前
Android SparseArray
android·源码
liang_jy17 小时前
Activity 启动流程扩展篇(一)—— startActivityInner 任务决策全解析
android·源码
2401_8323655217 小时前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python
2301_7796224118 小时前
Go语言怎么用信号量控制并发_Go语言semaphore信号量教程【入门】
jvm·数据库·python
2301_7662834418 小时前
c++如何将控制台输出保存到文件_cout重定向到txt【详解】
jvm·数据库·python
北极的冰箱18 小时前
MySQL Ver 8.0.41 for macos14.7密码遗忘
数据库·mysql
NPE~18 小时前
[App逆向]脱壳实战
android·教程·逆向·android逆向·逆向分析