我需要一些帮助来制定一个select语句。我需要选择具有不同颜色的每个部件的总发货量。所以结果应该是一个带有颜色名称和总数的行。
这是我的架构:
create table s
( sno char(5) not null,
sname char(20) not null,
status smallint,
city char(15),
primary key (sno)
);
create table p
( pno char(6) not null,
pname char(20) not null,
color char(6),
weight smallint,
city char(15),
primary key (pno)
);
create table sp
( sno char(5) not null,
pno char(6) not null,
qty integer not null,
primary key (sno, pno)
);
答案 0 :(得分:0)
由于您的架构代表每个产品PNO只有一种颜色,所以我不确定您的问题实际需要什么。
按产品销售:
select p.pno
, sum (sp.qty)
from p join sp on (p.pno = sp.pno)
group by p.pno;
按颜色销售:
select p.color
, sum (sp.qty)
from p join sp on (p.pno = sp.pno)
group by p.color;
修改强>
要获得特定颜色的销售很容易:
select sum (sp.qty)
from p join sp on (p.pno = sp.pno)
where p.color = 'BLUE';