【发布时间】:2011-01-30 14:12:01
【问题描述】:
我一直在研究在 Reddit、Digg 甚至 Stackoverflow 等网站上使用的流行度算法。
Reddit 算法:
t = (time of entry post) - (Dec 8, 2005)
x = upvotes - downvotes
y = {1 if x > 0, 0 if x = 0, -1 if x < 0)
z = {1 if x < 0, otherwise x}
log(z) + (y * t)/45000
我一直在 SQL 中执行简单的排序,我想知道我应该如何处理这种排序。
应该用它来定义一个表,还是我可以用公式中的顺序构建一个 SQL(不影响性能)?
我也想知道,是否可以在不同场合使用多种排序算法,而不会导致性能问题。
我正在使用 Django 和 PostgreSQL。
我们将不胜感激! ^^
【问题讨论】:
标签: sql django postgresql django-orm popularity