2011-08-10 34 views
2

我只是想從下面的mysql查詢中得到Count> 0的結果。mysql相關子查詢計數只有在計數> 0時才返回

即使計數= 0,以下給出結果。

SELECT id, Name, 
(
SELECT COUNT(*) 
FROM 
(
%actual count query here% 
) A WHERE C.id=A.matching_col 
) AS Count 
FROM t1 C 
WHERE id!=0 
ORDER BY Name 

我改「WHERE id!=0 AND C.Count!=0" or "WHERE id!=0 AND t1.Count!=0",但它說 'Count is an unknown column'。

應該怎樣做呢?

+0

您是否嘗試過「Count!= 0」而沒有「t1。」? (並將其更改爲像k這樣的內容以避免混淆) –

回答

2

嘗試將HAVING Count>0添加到您的原始查詢結果中

由於您的count列是從另一個查詢派生的別名,我不相信where子句可以直接使用它。

1

我會別名你的第二查詢並做地方上像

select * from 
( 
    select count(*) as cnt from ( 

     select * from videos 
    ) a 
) b 
where cnt > 0