翻转具有动态列并修复行的表 sql 服务器

Posted

技术标签:

【中文标题】翻转具有动态列并修复行的表 sql 服务器【英文标题】:flip a table sql server with dynamic columns and fix rows 【发布时间】:2018-02-23 16:33:14 【问题描述】:

经过大量的加入和分组后,我已经达到了我想要的总数... 为了简单起见,我将降低表格的复杂性.. 假设我有这张表,可以为我提供每年/每月的模型总数

YearMonth| Totals|model
------------------------
2015-05 | 70    |AA
2015-05 | 50    |BB
2015-06 | 30    |AA
2015-06 | 10    |BB
------------------
201x-yy | 33    |AA
201x-yy | 90    |BB

我必须使用这些数据在 Excel 中创建一个特定的(非传统)图形 但唯一的方法是将表格转换为某种东西 列是动态的,行是固定的......像这样的

Model|2015-05|2015-06|----|201X-yy
------------------------------------
AA   | 70    | 30    |--- |33
BB   | 50    | 10    |----|90

是否可以使用查询来创建?还是我必须使用一些复杂的存储过程来首先创建一个临时表,然后将数据插入其中。

【问题讨论】:

【参考方案1】:

在这种情况下,我的建议是将该数据返回到 Excel,并使用 Excel 数据透视表来获取您的输出。您可以告诉 Excel 将链接静默直接返回到数据透视表。

【讨论】:

以上是关于翻转具有动态列并修复行的表 sql 服务器的主要内容,如果未能解决你的问题,请参考以下文章

如何找到所有具有 CHAR 数据类型的列并在其中具有数值的表?

将值插入具有DATETIME列的表中

合并列并获取计数 SQL Server 2008

带有动态创建行的表的表单

SQL Server "<>" 运算符与具有几百万行的表上的 "=" 相比非常慢

MYSQL 从具有 100 万行的表中选择 distinct(indexed_column)