2012-02-10 89 views
0

我有两个表带有以下各项:MySQL的记录SUM()GROUP BY

表1 tblcategories

ID类
1建筑师
2工程师
3项目经理

表2 tblpayments

id /类别ID /支付
1/1/100
2/2/150
3/2/50
4/1/200
5/1/50

电流我的记录SQL看起来像这样:

SELECT tblcategories.id,tblcategories.category,SUM(tblpayments.payment)AS总 FROM tblcategories,tblpayments WHERE(tblcategories.id = tblpayments.category) GROUP BY tblcategories.id

这给了我下面的结果:

记录/ ID /分类/总
1/1 /建筑师/ 350
2/2 /工程师/ 200

不过,我想以下结果:

录制/ ID /类别/总
1/1 /建筑师/ 350
2/2 /工程师/ 200
3/3/M计划anager/0

这可能吗?

回答

1

试试这个

SELECT cat.id, cat.category, SUM(pay.payment) AS total 
FROM tblcategories cat LEFT JOIN tblpayments pay 
    ON cat.id = pay.category 
GROUP BY cat.id 
+0

作品的魅力!谢谢。 – user1201748 2012-02-10 10:30:56

+0

@ user1201748:你应该[接受我的回答](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)如果它工作:) – Marco 2012-02-10 11:02:41