SQL Server纵表与横表相互转换的解决办法

2022-11-12 09:34:53
内容摘要
这篇文章主要为大家详细介绍了SQL Server纵表与横表相互转换的简单示例,具有一定的参考价值,可以用来参考一下。 对此感兴趣的朋友,看看idc笔记做的技术笔记! 1,纵表转横表 纵
文章正文

这篇文章主要为大家详细介绍了SQL Server纵表与横表相互转换的简单示例,具有一定的参考价值,可以用来参考一下。

对此感兴趣的朋友,看看idc笔记做的技术笔记!

1,纵表转横表

纵表结构 Table_A:

【图片暂缺】

转换后的结构:

【图片暂缺】

纵表转横表的SQL示例:

代码如下:


SELECT Name ,
SUM(CASE WHEN Course = N'语文' THEN Grade
ELSE 0
END) AS Chinese ,
SUM(CASE WHEN Course = N'数学' THEN Grade
ELSE 0
END) AS Mathematics ,
SUM(CASE WHEN Course = N'英语' THEN Grade
ELSE 0
END) AS English
FROM dbo.Table_A
GROUP BY Name

2,横表转纵表

横表结构Table_B:

【图片暂缺】

转换后的表结构:

【图片暂缺】

横表转纵表的SQL示例:

代码如下:


SELECT Name ,
'Chinese' AS Course ,
Chinese AS Score
FROM dbo.Table_B
UNION ALL
SELECT Name ,
'Mathematics' AS Course ,
Mathematics AS Score
FROM dbo.Table_B
UNION ALL
SELECT Name ,
'English' AS Course ,
English AS Score
FROM dbo.Table_B
ORDER BY Name ,
Course DESC 

以上所述是小编给大家介绍的SQL Server纵表与横表相互转换的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对512笔记网站的支持!

注:关于SQL Server纵表与横表相互转换的简单示例的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!