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

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

相关推荐
qq_4142565710 分钟前
JavaScript中类继承中super关键字的调用执行逻辑
jvm·数据库·python
团象科技15 分钟前
2026出海趋势观察:国际云服务器推荐重构企业全球化经营底盘
运维·服务器·重构
代码丰25 分钟前
RAG 文档切分、索引优化与 Reranker 学习笔记
数据库
Elastic 中国社区官方博客32 分钟前
Elastic 9.4:Workflows 正式发布、Agent Builder 更新,以及 Prometheus / PromQL 支持
运维·数据库·人工智能·elasticsearch·搜索引擎·信息可视化·prometheus
ㄟ留恋さ寂寞35 分钟前
html如何修改备注
jvm·数据库·python
2401_8844541537 分钟前
c++如何读取YAML格式配置文件_yaml-cpp库快速入门【详解】
jvm·数据库·python
2301_775639891 小时前
mysql升级时如何使用Ansible进行自动化部署_mysql自动化管理
jvm·数据库·python
WUYOUGYLU1 小时前
第一次买云服务器,最该先看什么?
数据库
CLX05051 小时前
怎样设置外键的更新级联操作_ON UPDATE CASCADE配置
jvm·数据库·python
李少兄1 小时前
高性能MySQL实战:应用层关联查询的深度优化
数据库·mysql