首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL从3列转换为2列

SQL从3列转换为2列
EN

Stack Overflow用户
提问于 2016-05-04 13:36:20
回答 2查看 215关注 0票数 4

我正在尝试将3列转换为2。有什么方法可以用下面的例子来完成吗?还是用另一种方式?

例如。

代码语言:javascript
复制
Year   Temp   Temp1
2015    5       6

转入:

代码语言:javascript
复制
Year   Value
Base     5
2015     6
EN

回答 2

Stack Overflow用户

发布于 2016-05-04 13:46:56

这就是所谓的不枢轴,枢轴正好相反(使2列变成更多)。

您可以使用一个简单的UNION ALL来完成这一任务。

代码语言:javascript
复制
SELECT 'Base',s.temp FROM YourTable s
UNION ALL
SELECT t.year,t.temp1 FROM YourTable t

这是你在评论上所写的内容,如果年份不变,你可以用'2015‘代替它。

票数 5
EN

Stack Overflow用户

发布于 2016-05-04 15:03:18

你的问题有不止一个答案。使用UNION ALL似乎是最简单的解决方案。

我建议阅读这个线程Converting Columns into rows with their respective data in sql server,因为它提供了更多的细节,您可以尝试并测试不同的解决方案是如何为您工作的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37029483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档