2014-01-05 86 views
-1

我有兩個表:'新聞'和'評論'。如何計算每篇新聞文章的評論數量?選擇COUNT週期

SELECT `news`.`name`,`news`.`text` (SELECT COUNT(1) FROM `comments` WHERE 
`comments`.`news_id`=`news`.`id`) AS `comments` FROM `news`,`comments` 

這是行不通的。

+5

定義 「不工作的權利」。另外,你的外部選擇不需要'FROM註釋'。只是'...因爲''評論\'從''新聞'。 – meagar

+0

你想要統計新聞文章的評論數量嗎? –

+0

while($ row = $ query-> fetch_array(MYSQLI_ASSOC)){ echo $ row [name]。'
'。$ row [comments]。'註釋'; } 每條新聞都會有第一條新聞的評論數量。 – aspermag

回答

1

嘗試這種方式

SELECT n.name, n.text, COUNT(c.news_id) total_comments 
    FROM news n LEFT JOIN comments c 
    ON n.id = c.news_id 
GROUP BY n.id 

這裏是SQLFiddle演示