2013-10-30 40 views
0

如果我有一個user表和post表,並且我想要計算用戶今天發佈的帖子數,我可以考慮兩種方法。數據庫中的計數記錄和計數器變量之間的差異

第一個是發送一個SQL查詢來計算今天創建了多少個屬於userpost記錄。

二是有一個count表中,有三列:user_idnum_posts,並date,這樣,當用戶發出的帖子,num_posts遞增,如果date今天,或者乾脆設置爲1,而當我們需要統計帖子,如果日期是今天,或者說0,我們簡單地檢索num_posts

在我看來,這兩種方法都是實用的,但我不是沒有太多關於DB如何在後端,所以我不確定採用哪條路線(儘管大多數人似乎都是第一個實施的)。任何人都可以給我一些想法嗎?

回答

2

如果系統中的用戶和帖子數量不是太多,第一個應該沒問題。但是,如果用戶和帖子太多,您可能需要考慮第二種選擇,因爲速度會更快。缺點是它需要更多空間來存儲數據。

3

第二種選擇更加多餘,我不會推薦它,除非你有第一個性能問題。 (冗餘可能會導致不一致,這在rdbms世界是不好的。)

0

要有一個單獨的表的帖子數量是多餘的。通過查詢此表或查詢帖子表,您可以獲得相同的信息。避免這種情況,如果您因性能原因而不需要它。

相關問題