我有一个包含很多文章的数据库。现在我希望我的脚本根据命中,喜欢,不喜欢和时间来修改数据库中的“流行度”字段。
你会怎么做?文章越老,当然越不相关。但是,如果这篇文章是两周大,但是我得到很多热门,并且喜欢我希望它能够显示出来。
有什么想法吗?
答案 0 :(得分:0)
考虑到你已经掌握了所有数据,我会像下面这样计算流行度(伪代码):
Popularity = (1 / now - time) + likes - dislikes.
所以在MySQL查询中它会是这样的:
UPDATE articles SET
popularity = (now() - article.timestamp) + article.likes - article.dislikes;
运行查询并更新数据后,您可以对数据应用排序以获取最受欢迎的artcles:
SELECT * FROM articles
ORDER BY popularity DESC.
希望这有帮助。