2010-12-23 36 views
2

我試圖找出一個複雜的(至少對我來說!)MySQL查詢返回的結果,並希望有人在這裏可能有一些線索對我..從2個MySQL表

我有2代表「用戶」和「文件」。

用戶:

ID,姓名,地址等。

文件: ID,USER_ID,FILE_NAME等。

我要選擇從用戶和在所有行結果創建最後一列,其中包含User.id = Files.user_id的所有文件的計數。

我試圖從用戶UNION SELECT *(SELECT COUNT Files.user_id WHERE Users.id = Files.user_id),但當然,這並不工作..

回答

3
select u.*, count(f.id) 
from users u 
left join files f on u.id = f.user_id 
group by u.id 
+0

這個工作,但我已經想通了另一方式..我可能會加倍回來,並與您的解決方案,這是真正的最好的方式,而不是像我已經做了2個查詢.. :) – Dennis 2010-12-29 01:59:36