【发布时间】:2017-02-20 19:01:32
【问题描述】:
在 Rails 中,您可以使用:
Model.group(:field).count
产生类似的东西:
{"a"=>7, "b"=>5, "c"=>3 "d"=>3, "e"=>4}
但是我如何计数只在最后 N 行,而不是整个表中,DATABASE 进行计算? p>
不工作:
Model.limit(100).group(:field).count
limit 将限制哈希输出键而不是使用的表行
Model.last(100).group(:field).count
Last 返回一个数组并引发错误
我正在使用: * 红宝石 2.3.3p222 * 导轨 4.2.4 * 第 9.5.6 页
【问题讨论】:
-
这应该可以工作:
Model.where(id: Model.limit(100).select(:id)).group(:field).count -
@AbM 我只能说:爆头!请使用“答案”我可以接受吗?
标签: ruby-on-rails ruby-on-rails-4 ruby-on-rails-5 rails-postgresql