它翻倍,因为您在基金和收入表中重复了标题。这将匹配的记录数相乘。如果删除聚合函数并查看原始数据,这很容易看到。看这里
解决此问题的方法是创建聚合的内联视图,并加入这些结果。
SELECt R.title_id, R.revenue, R.cost, F.interest FROM (SELECt title_id, Sum(revenue) revenue, Sum(cost) cost FROM revenue GROUP BY revenue.title_id) r LEFT JOIN (SELECt title_id, Sum(interest) interest FROM fund GROUP BY title_id) f ON r.title_id = F.title_id
输出
| TITLE_ID | REVENUE | COST | INTEREST |----------------------------------------| 1 | 30 | 11 | 30 || 2 | 30 | 11 | 30 || 3 | 30 | 11 | 30 || 4 | 30 | 11 | 30 |
演示
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)