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

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

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