sql 行列互换

在SQL中进行行列互换可以使用PIVOT函数。下面是一个示例查询及其对应的结果:

  • 创建测试表格
sql 复制代码
CREATE TABLE test_table (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    category VARCHAR(50)
);
  • 向测试表格插入数据
sql 复制代码
INSERT INTO test_table VALUES (1, 'A', 'Category A');
INSERT INTO test_table VALUES (2, 'B', 'Category B');
INSERT INTO test_table VALUES (3, 'C', 'Category C');
INSERT INTO test_table VALUES (4, 'D', 'Category D');
INSERT INTO test_table VALUES (5, 'E', 'Category E');
  • 使用PIVOT函数进行行列互换
sql 复制代码
SELECT * FROM (
    SELECT id, name, category
    FROM test_table
) AS src
PIVOT (
    MAX(name) FOR category IN ([Category A], [Category B], [Category C], [Category D], [Category E])
) AS piv;

运行上述查询后,将会得到如下结果:

相关推荐
晚风_END3 小时前
Linux|操作系统|最新版openzfs编译记录
linux·运维·服务器·数据库·spring·中间件·个人开发
dLYG DUMS3 小时前
DBeaver连接本地MySQL、创建数据库表的基础操作
数据库·mysql
kumat4 小时前
分享-搭建个人系统 MySelfSys
sql·系统
苍煜4 小时前
MySQL分库分表和ES到底怎么选?
数据库·mysql·elasticsearch
茉莉玫瑰花茶4 小时前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
czlczl200209255 小时前
松散索引扫描/跳跃索引扫描
数据库·mysql·性能优化
星马梦缘6 小时前
数据库作战记录 实验7、8
数据库·sql·oracle
安逸sgr7 小时前
Hermes Agent + Obsidian 打造第二大脑(六):分层记忆系统的设计逻辑——L0/L1/L2/L3 四层记忆详解
数据库·agent·知识库·hermes·hermesagent
苍煜7 小时前
一篇讲懂分库分表:概念、spirngboot实战
数据库·oracle
xy34537 小时前
软件评测师基础知识专项刷题:网络安全技术(三)
刷题·软考·备考·软件设计师·软件评测师