计算相关表之间的总和
Calculating sum between related tables
我创建了一个测试数据库来说明我的问题:
create table A(
id int(11) primary key not null,
price decimal(10,2)
);
create table B(
id int(11) primary key not null,
id_a int(11) not null,
foreign key(id_a) references A(id)
on update cascade
on delete restrict
);
insert into A values
(1,25),
(2,30),
(3,35);
insert into B values
(1,1),
(2,1),
(3,2),
(4,2),
(5,3);
这是一些商品(A)及其价格的简化示例,以及一个账单(B),上面有账单ID和外键,代表购买了什么商品。
我需要查询以查找所有已售商品的利润。所以要通过 table B 并找到所有已售商品价格的总和。
您可以只连接两个表:
SELECT SUM(price)
FROM a
JOIN b ON b.id_a = a.id
我创建了一个测试数据库来说明我的问题:
create table A(
id int(11) primary key not null,
price decimal(10,2)
);
create table B(
id int(11) primary key not null,
id_a int(11) not null,
foreign key(id_a) references A(id)
on update cascade
on delete restrict
);
insert into A values
(1,25),
(2,30),
(3,35);
insert into B values
(1,1),
(2,1),
(3,2),
(4,2),
(5,3);
这是一些商品(A)及其价格的简化示例,以及一个账单(B),上面有账单ID和外键,代表购买了什么商品。
我需要查询以查找所有已售商品的利润。所以要通过 table B 并找到所有已售商品价格的总和。
您可以只连接两个表:
SELECT SUM(price)
FROM a
JOIN b ON b.id_a = a.id