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

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

相关推荐
卓怡学长10 分钟前
w269基于spring boot + vue 候鸟监测数据管理系统
java·数据库·spring boot·spring·intellij-idea
庄周de蝴蝶11 分钟前
两次考试,总算压线通过系统分析师
后端·架构
ClouGence15 分钟前
MySQL 到 StarRocks 数据迁移同步:同步方案与实践指南
数据库·mysql
行业研究员24 分钟前
当数据生产者变成 Agent,数据库底座如何重构?
大数据·数据库·重构
AAA@峥26 分钟前
容器数据不丢失:Docker 分层存储 + Volume 共享、备份迁移完整指南
运维·docker·容器
孫治AllenSun29 分钟前
【MDC】使用 MDC 封装一个 LogMdcUtil 工具类
java·spring boot·后端
人工智能培训30 分钟前
破解数据发展瓶颈 激活数字经济新动能
大数据·数据库·人工智能·深度学习·神经网络·机器学习·生成对抗网络
神奇小汤圆34 分钟前
Java 26正式发布!这3个新特性,让代码量直接减半
后端
MDM.Plus42 分钟前
苹果MDM技术演进:从远程控制到设备信任体系的构建
运维·服务器·安全·ios·mdm·手机店
再吃一根胡萝卜43 分钟前
一亿数据下,如何实时统计“业务员业绩 TOP 10”?别再 GROUP BY 了
后端