根据计算订单记录

时间:2016-10-07 20:54:47

标签: mysql ruby-on-rails sorting

我目前正在寻找目标最多的玩家:

Player.joins(:player_stats).group('players.id').order('SUM(player_stats.goals) DESC')

但是现在我想按每场比赛的目标排序,这是他们所有目标(player_stats.goals)的总和除以他们所玩的比赛数(players_stats.length)。使用order()进行排序时,是否可以像这样进行算术?

注意:我正在使用mySQL数据库。

1 个答案:

答案 0 :(得分:1)

我认为沿着这些方向会有所作为:

Player.joins(:player_stats)
      .group('players.id')
      .order('(SUM(p‌​layer_stats.goals) / COUNT(player_stats.player_id)) DESC')