在划分两行后选择前5个MySQL

时间:2016-03-25 01:44:41

标签: php mysql

我有一个评级系统,其评级为1-5,然后增加投票数并增加评级总数。这对我的前5个排行榜来说是个问题,排行榜目前通过这个查询从MySQL数据库通过php web服务提供Xml:

FROM ratings ORDER BY totalRating DESC LIMIT 5

现在显然这不会起作用。

有没有办法通过noRating进行totalRating的分割,然后按顺序进行返回?

我试图将其保持在数据库级别。希望它是可能的。

编辑:

所以,让我们说我的表评级有两个记录:

Name | cRating | tRating //current number of ratings and total
Tv1  |    2    |    10  
Tv2  |    3    |    9

我需要做tRating / cRating然后将它们排序到前5个节目

所需的结果是返回前5个平均评分结果(对于我手机上的可怕格式感到抱歉)

1 个答案:

答案 0 :(得分:1)

您可以在order by中使用算术表达式。所以这可能会做你想要的:

order by tRating / nullif(cRating, 0) desc