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

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

相关推荐
用户8356290780511 分钟前
如何使用 Python 将 PowerPoint 转换为 PDF 文档
后端·python
倔强的石头_2 分钟前
从 8 行报错到一条故障链:我用蓝耘 MaaS 做了一个 AI 日志分析助手
后端
敲个大西瓜5 分钟前
Spring Could Alibaba 核心面试题
java·后端·spring
这个DBA有点耶7 分钟前
Oracle 迁移金仓兼容性评估指南:5 大维度深度拆解
数据库·oracle·架构
用户83562907805112 分钟前
如何使用 Python 为 PowerPoint 幻灯片添加切换效果
后端·python
四千岁20 分钟前
RAG系统中的分块
前端·javascript·后端
Young_Gnay23 分钟前
.NET 之 WebApi学习笔记 (持续更新)
后端·c#
程序员cxuan33 分钟前
Claude Code :如何最大化你的 Session 价值
人工智能·后端·程序员
lsh曙光35 分钟前
playbook剧本(2)--Ansible变量
linux·运维·网络