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

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

相关推荐
上善若水_厚德载物2 分钟前
Centos7 Mysql 5.7 读写分离
数据库·mysql
赴前尘12 分钟前
golang 查看指定版本库所依赖库的版本
开发语言·后端·golang
张太行_23 分钟前
Linux静态库:多模块高效管理
linux·运维·服务器
Mr__Miss23 分钟前
Redis的持久化
数据库·redis·缓存
CCPC不拿奖不改名37 分钟前
SQL基础(SQL小白教程):MySQL语句+环境一键搭建+面试习题
数据库·sql·计算机网络·mysql·oracle·面试·职场和发展
陈文锦丫44 分钟前
JAVA面试
数据库·mysql
sunfove1 小时前
将 Python 仿真工具部署并嵌入个人博客
开发语言·数据库·python
wgl6665201 小时前
Linux---基础IO!
linux·运维·服务器
Ancelin安心2 小时前
kali-dirsearch的使用
linux·运维·服务器·python·计算机网络·web安全·网络安全
jun_bai2 小时前
python+Java的网盘程序升级版。无感知备份文档,保护数据资产利器。
运维·服务器