以下はテーブルです
表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
。私のコードのどこが間違っているのか教えてください.誰かが私を助けてくれれば感謝します.