现在的位置: 首页 > 综合 > 正文

SQL 分组查询,把纵向显示的结果变成横向显示

2012年10月22日 ⁄ 综合 ⁄ 共 640字 ⁄ 字号 评论关闭
/*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

抱歉!评论已关闭.