日期:2014-05-16 浏览次数:20505 次
--drop table t
create table t(
年份 int,月份 int,
地址 varchar(10),类型 varchar(20),数值 int)
insert into t
select 2014,1,'北京','电视机',20 union all
select 2014,1,'上海','电视机',44 union all
select 2014,1,'北京','洗衣机',40 union all
select 2014,1,'上海','手机',50 union all
select 2014,2,'北京','手机',20 union all
select 2014,2,'上海','手机',30 union all
select 2014,3,'北京','加热器',50 union all
select 2014,3,'上海','除湿机',60
go
select 年份,月份,类型,
max(case when 地址='北京' then 数值 else 0 end) '数值-北京',
max(case when 地址='上海' then 数值 else 0 end) '数值-上海'
from t
group by 年份,月份,类型
/*
年份 月份 类型 数值-北京 数值-上海
2014 1 电视机 20 44
2014 1 手机 0 50
2014 1 洗衣机 40 0
2014 2 手机 20 30
2014 3 除湿机 0 60
2014 3 加热器 50 0
*/