Home >Backend Development >PHP Tutorial >天涯社区这种收藏提示更新了多少帖子在数据库上应该如何设计?

天涯社区这种收藏提示更新了多少帖子在数据库上应该如何设计?

WBOY
WBOYOriginal
2016-06-06 20:40:221291browse

如图:
天涯社区这种收藏提示更新了多少帖子在数据库上应该如何设计?
我收藏的帖子后面显示该帖子楼主又更新了多少帖子,点击该帖子后,该帖子“新增帖子数”置零。
假设以“三十三岁,16年股龄,记录自己的心情”为例,楼主更新了该帖子后,是不是要在"tianya_collections"这个数据表所有关注该帖子的人都要在"update_num"这个字段下面都要+1?感觉这样效率有点低下吧,有没有更好的数据库设计方式?
我能想到的数据库设计:tianya_collections


id tiezi_id uid update_num


回复内容:

如图:
天涯社区这种收藏提示更新了多少帖子在数据库上应该如何设计?
我收藏的帖子后面显示该帖子楼主又更新了多少帖子,点击该帖子后,该帖子“新增帖子数”置零。
假设以“三十三岁,16年股龄,记录自己的心情”为例,楼主更新了该帖子后,是不是要在"tianya_collections"这个数据表所有关注该帖子的人都要在"update_num"这个字段下面都要+1?感觉这样效率有点低下吧,有没有更好的数据库设计方式?
我能想到的数据库设计:tianya_collections


id tiezi_id uid update_num


一種思路是以收藏者爲參考系,收藏者維持一個變量,隨着目標的變化而變化,每看一次都清零;

另一種是以目標爲參考系,目標變化只需要自顧自地變化,收藏者也只需要維護自己看的時候目標是多少。
等再看的時候,一對比,自然就得出收藏者參考系的變量。

原帖的数据库 -> 原帖的总帖数 A
本人的收藏夹数据库 -> 本人已浏览的帖数 B

当本人刷新收藏夹页面时,服务器得到A、B, 再用A-B

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn