以标题作为第一行创建动态数据透视表

时间:2013-10-24 22:57:49

标签: tsql pivot union pivot-table

我创建了一个创建动态数据透视的过程,以便总结项目的工作时间。在这个数据透视图中,我想在顶部插入一行,列标题为。

这就是表格的样子

headers --> |  Name  |  Hours  |  Project  |
            |  Bill  |    30   |   proj1   |
            |  Steve |    34   |   proj1   |
            |  Bill  |    42   |   proj2   |

这就是枢轴的样子

headers --> |  Name  |  proj1  |  proj2  |
            |  Bill  |    30   |    42   |
            |  Steve |    34   |         |

这就是我想要的方式

headers --> | column1 | column2 | column3 |
            |  Name   |  proj1  |  proj2  |
            |  Bill   |    30   |    42   |
            |  Steve  |    34   |         |

有没有办法通过创建临时表或其他东西来做到这一点? 是的,我需要将标题作为一行而不仅仅是列标题。

1 个答案:

答案 0 :(得分:0)

通常当我需要这个时,我联合一个包含带有需要标题行的查询的文本的选择。要让他们到达顶部,您需要通过将它们置于顶部的东西来订购。如果你没有任何东西,可以添加假场。

select 0 'orderby', col1, col2, col3 
from mytable
union
select -1, 'col1', 'col2', 'col3'
order by orderby