0
Excelに付属しているかなり古いMicrosoft Queryを使用して、ODBCデータベースを照会しています。しかし、私は2つのテーブルを結合すると私に間違った合計を与えています。間違った和を返すSQLクエリ
これは正常に動作します:
SELECT accountcode, SUM(tr_amount)
FROM deb_trans deb_trans
WHERE (today() > dr_tr_due_date + 14)
GROUP BY accountcode
をしかし、これはそうではない:
SELECT deb_trans.accountcode, Sum(deb_trans.tr_amount)
FROM deb_trans deb_trans, mailer_master mailer_master
WHERE (today()>dr_tr_due_date+14) AND (mailer_master.accountcode=deb_trans.accountcode)
GROUP BY deb_trans.accountcode
入社フィールドはaccountcodeています。
フィールドtr_amountは、deb_transテーブルからorginatesです。 mailer_masterには存在しません。
アイデア?みんなありがとう!
2つのテーブルの間に1対1の対応がない場合、同じSUMを得ることはできません。たとえば、mailer_masterの2つの行がdeb_transの1つの行に参加すると、その行のdeb_transに対してtr_amountが2回追加されます。 –
ありがとうございます。それは1つ(mailer_master)-many(deb_trans)の対応です。 Deb_transにはすべての重要な情報があります。 mailer_masterが共通のアカウントコードを使って持つ余分なフィールドを付けたいだけです。 – halohunter
2番目のテーブルを追加すると、SUMは大きくなるか小さくなりますか? –