MySql UNION 一行转多列的实现示例
更新时间:2023年08月24日 09:42:22 作者:Xiaoweidumpb
在MySQL命令行中,有时候我们会遇到一行的数据需要以多列的形式呈现的情况,本文就详细介绍了一下一行转多列的实现示例,具有一定的参考价值,感兴趣的可以了解一下
背景:DataEase饼图有特定格式,并且报表要求全部使用SQL语句获取数据
原先数据格式如下,需要行转换列
转换后结果:
原理
字段1,target作为一个不存在的字段,用于命名。
字段2,count字段是关键,将查询结果命名为统一名称,实现行转列。
UNION 拼接三句一样的SQL语句
更改后SQL
( 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 )
到此这篇关于MySql UNION 一行转多列的实现示例的文章就介绍到这了,更多相关MySql UNION 一行转多列内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
MySQL修改lower_case_table_names参数的方法实践
本文主要介绍了MySQL修改lower_case_table_names参数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2024-05-05MySQL出现"Lock wait timeout exceeded"错误的原因是什么详解
这篇文章主要给大家介绍了关于MySQL出现"Lock wait timeout exceeded"错误的原因是什么的相关资料,工作中同事遇到此异常,查找解决问题时,收集整理形成此篇文章,文中通过实例代码介绍的非常详细,需要的朋友可以参考下2023-05-05
最新评论