2013-10-29 61 views
1

我有這個查詢。它從rena表中選擇所有數據,並從gallery表中計數行,然後從rena表中收集記錄> 0的記錄。但是查詢不起作用,我不知道什麼是錯的,以及如何解決它。Mysql在哪裏計數

SELECT fol.*, 
    (SELECT COUNT(*) FROM gallery fil 
     WHERE fil.ren_id = fol.id) AS "Files" 
FROM rena fol where Files>0 

回答

0

試試這個。 嵌套查詢計數,然後加入雷納

SELECT fol.*,cnt FROM rena fol join 
(
select ren_id,count(*) cnt from gallery fil group by ren_id 
    ) as aaa 
on fol.id=aaa.ren_id 
0

我不知道它是如何工作的MySQL,但對Oracle我會做類似

SELECT fol.*, (SELECT count(*) FROM gallery fil 
       WHERE fil.ren_id = fol.id) AS "Files" 
WHERE EXISTS (SELECT 1 FROM gallery fil 
       WHERE fil.ren_id = fol.id); 

因爲你只需要至少一個文件儘快匹配> 0作爲分貝發現一行匹配fil.ren_id = fol.id你應該得到正確的結果。

+0

它不工作.. –