排名/人气系统

时间:2012-10-06 11:58:59

标签: php mysql cakephp

我正在尝试找出最好的方法来衡量我的产品以及它们应该出现在主页上的顺序等。

有四个指标我想要紧缩并转变为排名:

  • 购买产品
  • 产品的年龄(以天为单位)
  • 产品已保存多少次
  • 产品被浏览了多少次

理想情况下,每个都具有可调整的权重:

购买:40% 年龄:10% 节省:30% 观点:20%

我读过http://blog.linkibol.com/2010/05/07/how-to-build-a-popularity-algorithm-you-can-be-proud-of/

贝叶斯似乎也是一个很好的方法,因为它使用常数平滑了平均值。

基本上我正在寻找一个库/插件等,我可以在CakePHP项目中使用它来实现这一点。

有什么建议吗? Stack是CakePHP / Apache / MySQL

1 个答案:

答案 0 :(得分:0)

根据您的描述,似乎这样可行:

SELECT ifnull(purchases,0) * .4 + ifnull(product_age,0) * .1 + ifnull(save_count,0) * .3 + ifnull(view_count,0) * .2 as weighting
FROM my_table

或发布一组更新的要求......