行列转换:MySQL中的数据变形魔法

行转列

使用CASE函数+聚合函数

sql 复制代码
SELECT
    MAX(CASE WHEN salesperson = 'John' THEN sales_amount END) AS John_Sales,
    MAX(CASE WHEN salesperson = 'Alice' THEN sales_amount END) AS Alice_Sales
FROM sales_data;

列转行

使用UNIO连接每列数据

sql 复制代码
SELECT product_id,'store1' store,store1 price FROM products WHERE store1 IS NOT NULL
UNION 
SELECT product_id,'store2' store,store2 price FROM products WHERE store2 IS NOT NULL
UNION
SELECT product_id,'store3' store,store3 price FROM products WHERE store3 IS NOT NULL
相关推荐
青春:一叶知秋1 小时前
【Redis存储】List列表
数据库·redis·缓存
爆更小哇3 小时前
MyBatis的TypeHandler :优雅地实现数据加密与解密
数据库·后端·mybatis
likuolei4 小时前
Eclipse 创建 Java 接口
java·数据库·eclipse
w***15314 小时前
Spring boot启动原理及相关组件
数据库·spring boot·后端
q***65694 小时前
PostgreSQL 17 发布了!非常稳定的版本
数据库·postgresql
凌寒114 小时前
Linux(Debian)安装、卸载 MySQL
linux·运维·mysql·debian
云飞云共享云桌面4 小时前
如何降低非标自动化工厂的研发软件采购成本
运维·服务器·网络·数据库·性能优化·自动化
泰克教育官方账号4 小时前
泰涨知识 | 什么是自动化巡检?
运维·服务器·数据库
oneslide5 小时前
分享一个MySQL数据库备份恢复脚本--II
数据库·mysql
Gauss松鼠会5 小时前
【GaussDB】使用DBLINK连接到ORACLE
数据库·sql·database·gaussdb