/*create table BookLibary([图书馆] varchar(10), [科目] varchar(10), [数量] int)
insert into BookLibary
select 'A', '语文', 5
union all select 'B', '数学', 6
union all select 'C', '英语', 3
union all select 'B', '语文', 4
union all select 'A', '数学', 3
*/
declare @exec varchar ( 8000 )
set @exec = ' select [图书馆] '
select @exec = @exec + ' ,max(case when [科目] = ''' + [ 科目 ] + ''' then [数量] else '''' end) as ''' + [ 科目 ] + '''' from BookLibary group by [ 科目 ]
set @exec = @exec + ' from BookLibary group by [图书馆] '
print @exec
exec ( @exec )
select * from BookLibary
insert into BookLibary
select 'A', '语文', 5
union all select 'B', '数学', 6
union all select 'C', '英语', 3
union all select 'B', '语文', 4
union all select 'A', '数学', 3
*/
declare @exec varchar ( 8000 )
set @exec = ' select [图书馆] '
select @exec = @exec + ' ,max(case when [科目] = ''' + [ 科目 ] + ''' then [数量] else '''' end) as ''' + [ 科目 ] + '''' from BookLibary group by [ 科目 ]
set @exec = @exec + ' from BookLibary group by [图书馆] '
print @exec
exec ( @exec )
select * from BookLibary