Другой способ сделать это (не проверено, поэтому дайте мне знать, если он взорвется):
SELECT emp.id, IF(emp.statue=1, c.sumCome, 0) AS sumCome, l.sumLeave
FROM emp
LEFT JOIN (SELECT uid, SUM(money) AS sumCome
FROM come
GROUP BY uid
) c ON emp.id = c.uid
LEFT JOIN (SELECT uid, SUM(money) AS sumLeave
FROM leave
GROUP BY uid
) l ON emp.id = l.uid
Я не знаю, что будет быстрее, чем у Кевина.Возможно, вы захотите explain
их обоих и посмотрите.