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

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

相关推荐
Archy_Wang_15 小时前
LVS+KeepAlived+Nginx实现企业级业务高可靠部署的实战教程
运维·nginx·lvs
张文君6 小时前
docker使用代理拉取镜像
运维·docker·容器
神王宝宝 王者小学6 小时前
HBase: 看上去很美
大数据·数据库·hbase
codeGoogle7 小时前
自研 IM 还是选择第三方 SDK?企业开发者应该如何权衡?
前端·后端·程序员
io无心7 小时前
Shardingsphere5分库分表
数据库·mysql
陌路207 小时前
Docker教程从入门到精通(0基础)
运维·docker·容器
wWYy.7 小时前
Mysql:主键索引 唯一索引 普通索引 前缀索引
数据库·mysql
Tongzhi20268 小时前
从部署到运维:通芝科技无感考勤一体机的全流程效率解析
运维·数据结构·科技·算法·贪心算法
宝杰X78 小时前
Android Room3 多平台数据库
android·数据库
数据知道8 小时前
宽字节注入、二次注入、堆叠注入:高级 SQLi 专题
linux·运维·安全·网络安全