ruby-on-rails - 选择 rails 中具有最大列值的行

标签 ruby-on-rails postgresql ruby-on-rails-4 filter

我有一组 ActiveRecord 表 Person (:id, :name, :city_id, :work_id, :date)。例如:

[<Person id: 4, name: John, city_id: 10, work_id: 1, date: 2015-10-10>,
  <Person id: 5, name: Jack, city_id: 11, work_id: 2, date: 2015-10-08>,
  <Person id: 8, name: John, city_id: 10, work_id: 2, date: 2015-10-11>,
  <Person id: 9, name: John, city_id: 10, work_id: 3, date: 2015-10-11>,]

对于特定的人,我想要具有最大日期的行。因此,对于 Jack,我将获取 id = 5 的行。对于 John,我将获取 id = [8,9] 的行,因为这些行的日期是最大值。我无法在 Rails 中找出一种有效的方法来实现这一点。请帮忙。

最佳答案

您可以使用 Rails 的 maximum 类方法。

试试这个:

Person.find_all_by_date(self.maximum('date'))

查看一些细节 here.

关于ruby-on-rails - 选择 rails 中具有最大列值的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33728063/

相关文章:

ruby-on-rails - helper 和包含在 Controller 中的区别是什么?

sql - 在 PostgreSQL 中内部连接表时计数缓慢

postgresql - 在 github 操作中设置多个容器

ruby-on-rails - Rails 网页有一个重定向循环 ERR_TOO_MANY_REDIRECTS

ruby-on-rails - Ruby on Rails-嵌套属性:如何从子模型访问父模型

ruby-on-rails - Docker未安装yarn

android - 构建 Rails 网络应用的移动应用衍生产品

c - 将 pg_config 与 waf 一起使用

ruby-on-rails - 你如何记录到 Cucumber 中的 Rails 日志文件?

postgresql - 如何分组/选择 JSON 类型列(PG::UndefinedFunction: ERROR: could not identify an equality operator for type json)