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

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

相关推荐
JoyT几秒前
Agent 开源项目全景解析(上):LangGraph、Spring AI 与 Agent Runtime
后端
云技纵横1 分钟前
线上接口突然超时,怎么判断卡在 Nginx、线程池、连接池还是 SQL?
后端·sql·mysql
Java内核笔记3 分钟前
容错能力进入 spring-core:Spring Boot 4 原生重试机制全解析
java·后端
风卿4 分钟前
知识库双路召回:BM25 关键词与语义向量 RRF 融合,附指标实测
后端
未秃头的程序猿8 分钟前
虚拟线程上线一周后翻车了——pinning问题排查实录
java·后端·架构
刚入门的大一新生8 分钟前
Linux-Linux第一个系统程序-进度条
linux·运维·服务器
VALENIAN瓦伦尼安教学设备9 分钟前
ASHOOTER激光对中仪如何通过颜色确定调整是否合适
数据库·嵌入式硬件·算法
Wang's Blog10 分钟前
AI Agent白手起家58: 项目可观测性——用 LangSmith 实现全链路追踪
数据库·人工智能
梦想的旅途212 分钟前
企业微信自动化实战:客户资料自动修改与备注同步
运维·自动化·企业微信
AI_paid_community17 分钟前
如何使用 Claude 在 AI 时代快速入局新的行业?(经验贴)
前端·javascript·后端