SQLServer列转行操作及union all用法

1.创建测试表及数据sql如下

create table ScoresTable(

Name varchar(50),

ChineseScore int,

MathScore int

)

insert into ScoresTable values('小张',90,95)

insert into ScoresTable values('小王',98,99)

2.表中查询结果如下

3.现需列转行显示,每行显示 姓名,科目,成绩

实现sql如下:

select * from

(

select Name, Subject ='语文',Scores=ChineseScore from ScoresTable

union all

select Name, Subject ='数学',Scores=MathScore from ScoresTable

) t

order by Name ,Subject

运行结果如下,实现了列转行

相关推荐
Databend4 小时前
周年庆结束了,湖仓为什么还在高消费?
大数据·数据库·agent
笃行3504 小时前
数据集成软件里最贵的一行字,叫“用同步工具做增量同步“
数据库
吴声子夜歌4 小时前
Docker入门与实战——Etcd(高可用的键值数据库)
数据库·docker·etcd
mklpo1474 小时前
在 安卓手机 上通过termux运行 gentoo 和 宝塔面板。2026.10.19
linux·运维·服务器
wing984 小时前
人生第一个私活:不到 2 小时,到手 350 元
前端·后端·程序员
qq_白羊座5 小时前
Hologres / PostgreSQL jsonb 常用函数 & 操作符对照表
数据库·postgresql
xatu5 小时前
ubuntu容器在redhat系统下使用大模型API问题
linux·运维·ubuntu
千桐科技5 小时前
qData 数据中台专业版功能解析:告别 Excel 与 SQL 拼凑,打通系统合并的可追踪数据链路
数据库·sql·excel·qdata
全栈弄潮儿5 小时前
Python实战第9期:文件操作
后端·python·编程语言
神魔皆以血嗜5 小时前
Java 实现简单状态机(订单状态流转)
java·后端