2010-10-31 58 views
0

我對我的mysql評論表(具有創建的時間戳)設置了標準comment_id/comment_parent_id。查詢評論表上的新回覆?

我的問題是什麼是最少的流程密集型查詢來獲取用戶評論的所有新回覆?就像使用複選框通過電子郵件回覆評論的評論系統一樣?

您是否爲上次登錄設置了時間戳?更新最後一個登錄表?

我想我想知道如何檢索的起點,所以我可以提醒用戶回覆他們的答覆。

對不起,如果我的解釋是神祕的。

+0

如果我正確理解你的問題,我會存儲用戶希望得到他/她的評論的答覆通知,通過這樣做,當一個新的評論發佈我只需用一個簡單的查詢來檢查父評論是否需要通知,我甚至可以擴展它來檢查內容的作者是否也想要通知。 – 2010-10-31 04:18:45

回答

0

添加一個「post_last_viewed_by_user」列(希望更好的名字)。然後,當用戶訪問後:

SELECT 
    comment 
FROM 
    comment.comment c 
    JOIN posts USING p (post_id) 
    JOIN user_post_views u USING (user_id) 
WHERE 
    user_id = ? 
    AND c.comment_time > u.post_last_viewed_by_user 
+0

這是否適用於線程回覆? – JJohn 2010-11-01 21:27:16

+0

你是什麼意思的線程答覆? – 2010-11-01 23:05:54