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

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

相关推荐
XDHCOM4 分钟前
利用MSSQL解析优化数据库性能,提升效率,驱动业务创新与稳定发展
数据库·sqlserver
私人珍藏库9 分钟前
【Android】Operit AI v1.10.0+11 豆包ai手机开源版 自动化手机
运维·自动化
程序员阿明14 分钟前
spring boot3识别PDF图纸
java·spring boot·后端·pdf
JuiceFS21 分钟前
浅析 Amazon S3 Files:工作机制、性能边界与 JuiceFS 对比
后端
·云扬·22 分钟前
MySQL分区实战指南:从原理到落地的完整攻略
数据库·mysql
浮槎来24 分钟前
光伏组件的PID学习
运维·学习·硬件工程·光伏
XPoet25 分钟前
AI 编程工程化:MCP——给你的 AI 员工打通外部能力
前端·后端·ai编程
雨墨✘26 分钟前
PHP怎么执行Shell命令_exec与shell_exec区别说明【说明】
jvm·数据库·python
Trouvaille ~32 分钟前
【MySQL篇】复合查询:多表数据的整合
数据库·sql·mysql·面试·复合查询·基础入门·多表连接
Project_Observer34 分钟前
列表视图中的筛选列
大数据·数据库·深度学习·机器学习·深度优先