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

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

相关推荐
viqjeee几秒前
Linux ALSA驱动详解
linux·运维·服务器·alsa
夜未央311 分钟前
HTTPS 原理与 PHP 文件包含及伪协议详解
运维·服务器·安全·网络安全
Swift社区1 分钟前
Spring Boot 配置文件未生效
java·spring boot·后端
计算机程序设计小李同学1 分钟前
基于Web和Android的漫画阅读平台
java·前端·vue.js·spring boot·后端·uniapp
云川之下1 分钟前
【网络】变长子网划分 (VLSM) 示例、点到点网络
运维·服务器·网络·变长子网
Dovis(誓平步青云)4 分钟前
《epoll深度解析:从原理到使用,解锁Linux高并发I/O的核心能力(终篇)》
linux·运维·服务器·网络
短剑重铸之日7 分钟前
7天读懂MySQL|特别篇:MVCC详解
数据库·后端·mysql·mvcc
不会kao代码的小王7 分钟前
服务器、存储与网络核心知识全解析
运维·服务器·网络
nix.gnehc14 分钟前
Anolis23 环境下 Docker 与私有 Harbor 仓库完整部署指南
运维·docker·容器
hhzz16 分钟前
Springboot项目中使用EasyPOI操作Excel(详细教程系列4/4)
java·spring boot·后端·spring·excel·poi·easypoi