3
如果我有一个包含未知数量成员的团队表,是否有一种方法可以使数据透视表动态变化?数据透视表可以使用未知数量的列吗?
create table #t (
team varchar (20), member varchar (20)
)
insert into #t values ('ERP', 'Jack')
insert into #t values ('ERP', 'John')
insert into #t values ('ERP', 'Mary')
insert into #t values ('ERP', 'Tim')
insert into #t values ('CRM', 'Robert')
insert into #t values ('CRM', 'Diana')
select * from #t
select team, [1] as teamMember1, /* 1st select */
[2] as teamMember2, [3] as teamMember3
from
(select team , member, row_number() /* 3rd select */
over (partition by team order by team) as rownum
from #t) a
pivot (max(member) for rownum in ([1], [2], [3])) as pvt
drop table #t
我认为你正在寻找这样的:http://stackoverflow.com/questions/2922797/t-sql-pivot-possibility-of-creating - 表 - 列 - 从行值。 Itzik Ben-Gan关于如何构建动态PIVOT的例子。 –