行列转换: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
相关推荐
高梦轩35 分钟前
PG数据库
数据库·oracle
云草桑1 小时前
DBA mssql 解决排序规则冲突 QA prod 和开发配置都是一样的服务器排序规则 为啥开发环境的的存储过程需要 加这个COLLATE Chinese_PRC_CI_AS
数据库·dba·mssql
卤炖阑尾炎1 小时前
MySQL 故障排查与生产环境优化实战指南
数据库·mysql
小陈工1 小时前
2026年4月2日技术资讯洞察:数据库融合革命、端侧AI突破与脑机接口产业化
开发语言·前端·数据库·人工智能·python·安全
solihawk1 小时前
分区大表统计信息不准确引发的性能问题
数据库
一叶飘零_sweeeet2 小时前
击穿 MySQL InnoDB MVCC 底层:从 undo log、Read View 到隔离级别的全链路深度拆解
mysql·innodb·mvcc
百结2142 小时前
postgresql日常运用
数据库·postgresql·oracle
前进的李工2 小时前
MySQL大小写规则与存储引擎详解
开发语言·数据库·sql·mysql·存储引擎
CoovallyAIHub3 小时前
Sensors 2026 | 从无人机拍摄到跑道缺陷地图,机场巡检全流程自动化——Zadar机场全跑道验证
数据库·架构·github
殷紫川3 小时前
MySQL 锁等待与死锁根治全攻略:从底层原理到 innodb status 精准定位实战
mysql