下面是表格
表格1
CREATE TABLE table1 (
id smallint(5) NOT NULL AUTO_INCREMENT primary key,
name varchar(30) NOT NULL
)
ENGINE=InnoDB;
表 2
create table table2(
no int auto_increment primary key,
Reg_no varchar(2),
debit decimal(19,2)
)
engine=innodb;
表3
create table table3(
no int auto_increment primary key,
Reg_no varchar(2),
Paid decimal(19,2)
)
engine=innodb;
请在下面是我的查询代码。
SELECT id, sum(Paid) AS AMOUNT,sum(debit) AS DEBIT
from table1 LEFT JOIN table2 ON table1.id=table2.Reg_no
LEFT JOIN table3 ON table1.id=table3.Reg_no
GROUP BY table1.id
请我发现在查询中使用双左连接非常困难,这段代码中的问题是,上面查询中使用的总和超过了预期的数字,例如sum(10+10)
将输出40
而不是20
. 请问我的代码哪里出了问题。如果有人可以帮助我,我将不胜感激。在此先感谢