給定一個數據庫表具有以下字段:如何創建一個mysql_query,用於抽取使用貝葉斯平均值排序的項目?
- total_votes:投這個項目/行
- AVERAGE_VALUE投票總數:平均投票值(即3.6與5爲最高)
- total_value:所有的票值的總和(4即3票將導致12)
我只是使用SELECT搶行和ORDER BY通過其平均值對他們進行排序,但隨後我遇到了一個很好的問題10票平均4.9得到超過一個全新的排名,只有1票5票超過它。
經過一番研究,我發現最受歡迎的排序評分項目的方法是使用貝葉斯平均值。
br = ((avg_num_votes * avg_rating) + (this_num_votes * this_rating))/(avg_num_votes + this_num_votes)
不過,我有困難的創建,拉這些行和我在創造任何東西的MySQL查詢方面提出了一個新手使用此平均值對其進行排序的查詢。
我正在尋找的是:
$results = mysql_query("INSERT ANSWER HERE");
哪裏INSERT ANSWER HERE
是你爲我提供和$results
提供這些物品分類由平均的貝葉斯答案。
有關平均貝葉斯更多信息,我檢查了:http://www.thebroth.com/blog/118/bayesian-rating
'$ results = mysql_query(「INSERT ANSWER HERE」);'讓我笑 –
哈哈。我很高興它給你帶來了一些喜悅。小前提示技巧指南說徹底。 :-) –