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

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

相关推荐
Muscleheng5 小时前
Spring Boot 3.x 集成 DeepSeek 实现 Function Calling(工具调用)
人工智能·spring boot·后端·ai·spring ai·deepseek
@航空母舰5 小时前
SpringBoot通过Map实现天然的策略模式
java·spring boot·后端
CodexDave5 小时前
PostgreSQL 明明有索引却选了 Nested Loop:从行数误判修正执行计划
数据库·postgresql·执行计划·扩展统计·nestedloop
IT_陈寒6 小时前
JavaScript的this又双叒叕让我怀疑人生了
前端·人工智能·后端
陈随易6 小时前
MCP协议第5次更新,从打电话到微信聊天的巨大变革
前端·后端·程序员
65岁退休Coder6 小时前
LangChain v1.3.4 笔记 - 06 RAG 检索增强生成
后端
LedgerNinja7 小时前
WEEX API 自动化交易实践:下单、撤单、订单查询与状态闭环
运维·自动化
妙码生花7 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(四十三):前后端数据验证
后端·go·ai编程
czhaii7 小时前
STC ai助手单片机工程项目创建实例
数据库·mongodb
YuePeng7 小时前
别再让 AI 直接写 SQL 了:一个注解搞定十亿行数据的语义层
后端·github