【发布时间】:2012-10-03 13:08:28
【问题描述】:
我写了一个查询。此查询总和来自 2 个不同的表的字段。并按主表 id 字段分组。但是第二个左外连接没有分组,给了我不同的结果。
SELECT s.*,
f.firma_adi,
sum(sd.fiyat) AS konak,
sum(ss.fiyat) AS sponsor
FROM fuar_sozlesme1 s
INNER JOIN fuar_firma_2012 f
ON ( s.cari = f.cari )
LEFT OUTER JOIN fuar_sozlesme1_detay sd
ON ( sd.sozlesme_id = s.id )
LEFT OUTER JOIN fuar_sozlesme1_sponsor ss
ON ( ss.sozlesme_id = s.id )
GROUP BY s.id
ORDER BY s.id DESC
我知道,这真的很复杂,但我坚持这个问题。
我的问题是:为什么第二个 left outer join 不是正确的字段总和。如果我删除第二个left outer join 或第一个,一切正常。
【问题讨论】:
-
您能否简单介绍一下您的表结构,看看您有哪些列以及每个表的一行示例
-
在派生表中进行求和和分组,然后将外部联接留在该表上。
标签: sql