按算法结果在db查询之外排序行

时间:2011-12-15 05:15:04

标签: php mysql algorithm sql-order-by

我正在尝试根据sql语句之外的算法来命令db查询的结果。

例如,每行包含author_karmapageviews列。我想通过在获取行后在php中计算的算法来对结果进行排序...

算法可能如下所示

$score = intval($author_karma) + (intval($pageviews)/100) + intval($age)

在黑客新闻这样的网站中这是在sql查询中计算的吗?他们如何使这项工作?如果我尝试将分数存储在数据库中,我多久更新一次(特别是当分数涉及时间时)?

1 个答案:

答案 0 :(得分:2)

您可以在查询中轻松完成

select this, that, other, (author_karmar + ( pageviews/100 ) + age ) as score from table order by score desc