行列转换: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
相关推荐
gameboy03133 分钟前
从MySQL迁移到PostgreSQL的完整指南
数据库·mysql·postgresql
xdl25991 小时前
Spring Boot中集成MyBatis操作数据库详细教程
数据库·spring boot·mybatis
回到原点的码农1 小时前
Spring Data JDBC 详解
java·数据库·spring
zb200641201 小时前
Spring Boot 实战:轻松实现文件上传与下载功能
java·数据库·spring boot
CSharp精选营1 小时前
SQL Server安装避坑:这8个奇葩报错你遇到过几个?
数据库·sql server·安装指南·避坑
一勺菠萝丶1 小时前
Flowable + Spring 集成踩坑:流程结束监听器查询历史任务为空 & 获取不到审批意见
java·数据库·spring
RDCJM2 小时前
mysql表添加索引
数据库·mysql
czlczl200209253 小时前
Redis命令处理逻辑模型
数据库·redis·缓存
楼兰胡杨3 小时前
面试题|MySQL 的 3 层主键索引最多能支撑多少数据量
mysql·面试题
spring2997923 小时前
LangChain-08 Query SQL DB 通过GPT自动查询SQL
数据库·sql·langchain