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 小时前
使用scitable包,两步生成逆概率删失权重(IPCW)
数据库·r语言
布鲁飞丝2 小时前
vivo Pulsar 万亿级消息处理实践()-Ansible运维部署
运维·ansible
XR1234567882 小时前
企业全光网络架构选型技术白皮书:从物理层到运维层的全链路分析
运维·网络·架构
隔窗听雨眠2 小时前
AI原生数据库浪潮:国产数据库的架构重构与路径之争
数据库
HiDev_2 小时前
【非标自动化】2、认识元器件(直线模组)
运维·自动化
数据库小学妹2 小时前
数据库选型实战:从数据类型到TCO成本,五维决策框架+九款产品横评
数据库·信创·国产数据库·数据库选型·oracle迁移
mldong3 小时前
从 mldong 到 jeeflow:一个工作流引擎的独立进化
后端
龙仔7253 小时前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
陈随易3 小时前
MoonBit抓包模块pcap,查看电脑的每一次联网通信
前端·后端·程序员
我不管我就要叫小猪3 小时前
嵌入式Linux----网络通信
linux·运维·服务器