如何在ActiveRecord的客户表中获取最受欢迎的邮政编码?

时间:2019-04-19 23:09:29

标签: ruby-on-rails activerecord

我已经和这个战斗了一段时间。这让我获得了每个邮政编码的所有数据...

Customer.group(:zip).count

但是我不能按计数最高的那个来排序。看起来这应该很简单,但我似乎找不到解决此问题的任何方法。

更新:获取最受欢迎的城市和州可能会更有帮助。在我看来,ActiveRecord确实不适合此操作,因为我并不是真正地要求使用Cutomer模型,但是在ActiveRecord之外我找不到任何有关查询的信息。如果在我不需要数据适合模型对象的情况下,如果有人可以向我提供与数据库交互的任何资源,那将非常有帮助。

2 个答案:

答案 0 :(得分:1)

您可以尝试遵循以下语法,它将返回计数最高的结果:

Customer.group(:zip).order("count_zip desc").count(:zip)

答案 1 :(得分:0)

如果我了解您的需求。您可以 请尝试以下任何一种方法

Customer.where(zip: 'testcode').maximum("value")

或者您可以尝试

Customer.where(zip: 'testcode').order("value DESC").first

Customer.where(zip: :testcode).order(value: :desc).first

您还可以获取红宝石文档 link