【发布时间】:2015-08-21 11:52:17
【问题描述】:
我正在创建一个数据库来保存用户的照片,并将返回每天最喜欢的照片 示例:我创建了一张照片 A,第一天,我得到了 100 个赞,第二天,我得到了 200 个赞,我总共有 300 个赞,所以我必须存储每天的赞值。 我在想这样的结构:
Table Photo[photo_id, user_id, photo_url]
Table Day_Rating[id, photo_id, like_count, date]
//Photo A can have many records in this table
Table Month_Rating[id, photo_id, like_count, month] //month is: 1,2,3,4..12
//Photo A can have many records in this table
所以当用户喜欢一张照片时,我们将在 Day_Rating 和 Month_Rating 表的 like_count 字段上增加 1。 因此,为了获得每日评分,我们将在 Day_Rating 表中使用 like_count 获得最多的喜欢,与每月评分相同。 您如何看待这种方法?如果有更好的方法,你能给我指出一个最佳实践吗? 谢谢
【问题讨论】:
-
为什么不直接使用 Day_Rating 表并通过限制日期的选择来确定月度评级?您的 Month_Rating 表绝对是多余的。