.
一个简单的表table有100条以上的信息其中包括
产品 颜色 数量
产品1 红色 123
产品1 蓝色 126
产品2 蓝色 103
产品2 红色 NULL
产品2 红色 89
产品1 红色 203
„„
表sql语句如下
create table test(product varchar(10),color varchar(10),tnumber number(6)) ;
insert into test values ('产品1','红色',123 );
insert into test values('产品1','蓝色',126 );
insert into test values('产品2','蓝色',103) ;
insert into test values( '产品2','红色',NULL ) ;
insert into test values('产品2','红色',89 );
insert into test values ('产品1','红色',203 ) ;
请用 sql语句完成以下问题
产品 颜色 数量
产品1 红色 123
产品1 蓝色 126
产品2 蓝色 103
产品2 红色 NULL
产品2 红色 89
产品1 红色 203
„„
表sql语句如下
create table test(product varchar(10),color varchar(10),tnumber number(6)) ;
insert into test values ('产品1','红色',123 );
insert into test values('产品1','蓝色',126 );
insert into test values('产品2','蓝色',103) ;
insert into test values( '产品2','红色',NULL ) ;
insert into test values('产品2','红色',89 );
insert into test values ('产品1','红色',203 ) ;
请用 sql语句完成以下问题
1.按产品分类仅列出各类商品种红色多于蓝色的商品名称及差额数量
select product,sum(case color when '红色' then tnumber else 0 end )-sum(case color when '蓝色' then tnumber else 0 end) as cha from test group by product having sum(case color when '红色' then tnumber else 0 end )>sum(case color when '蓝色' then tnumber else 0 end)
2.按产品分类将数据按下列方式进行统计显示产品 红色 蓝色
select product,sum(case when color='红色' then tnumber else 0 end) as 红色,
sum(case when color='蓝色' then tnumber else 0 end) as 蓝色 from test group by product