2013-08-27 60 views
0

我們有三個不同的以下各表...mSQL的錯誤和總金額的結果

用戶

ID,用戶名 密碼 電子郵件

user_clubs

ID , user_id, club_nam Ë

銷售

ID, club_id, 量, admin_fees, DNT

我們希望能夠得到admin_fees優秀的總和爲USER_ID(例如55),因此我們嘗試以下...

SELECT u.id, count(c.id), SUM(s.admin_fees) as total_admin_fees 
FROM users u 
LEFT JOIN user_clubs c ON c.user_id = u.id 
LEFT JOIN sales s ON s.club_id = c.id 
WHERE u.id = 55 
GROUP BY u.id; 

但是它的第一行的返回值,所以平衡是不正確的,請有助於解決。

+0

你應該考慮上傳您的方案http://www.sqlfiddle.com所以我們可以檢查出來。 – Itay

+0

好吧我會用sqlfiddle – seoppc

回答

0

試試這個:

SELECT g.id, count(g.club_id), SUM(g.admin_fees) AS total_admin_fees 
FROM  (
      SELECT u.id, c.id AS club_id, s.admin_fees 
      FROM  users u 
      LEFT JOIN user_clubs c ON c.user_id = u.id 
      LEFT JOIN sales s ON s.club_id = c.id 
      WHERE  u.id = 55 
     ) AS g 
GROUP BY g.id; 
+0

仍然沒有返回正確的結果 – seoppc