2012-01-24 60 views
0

我不是一位sql專家,但我正在修改自定義生成的論壇,並且需要更新一個表中的新字段來自另一張桌子的計數。我試圖做到這一點,而不是遍歷所有20,000個論壇帖子。查詢中的查詢 - 從表2的計數更新table1

的表的結構是如下所示:

POST_TABLE: 
ID, Post, Comment_count ... 

COMMENT_TABLE: 
ID, Comment, PostID ... 

其中PostID是註釋附加到在POST_TABLE後的ID。

我想更新的意見,其中PostID=ID爲每一個崗位數量的新領域COMMENT_COUNT(中發表評論,基本上)

我猜一個查詢可以處理這個問題,但我不知道如何構建它。任何幫助,將不勝感激。

回答

1
update post_table p 
set Comment_count = (
    select count(id) from COMMENT_TABLE 
    where post_id = p.id 
) 
+0

完美,謝謝。 – CarltonD

0
UPDATE post_table 
    SET comment_count = 
     (SELECT COUNT(1) 
      FROM comment_table 
      WHERE postid = post_table.id 
     ) 
; 
+0

完美,謝謝。 – CarltonD