首页 > 解决方案 > 用于测试两个不同列中的日期的 ActiveRecord 语法 Rails

问题描述

Rails 3.23

我有一个付款表,其中包含以下两列:

created_at
paid_at

我需要一个 ActiveRecord 查询来选择行,其中:

paid_at >= created_at + 30.days

我无法弄清楚语法。

以下语法有效:

where = "paid_at > DATE_ADD(created_at, INTERVAL 30 DAY)"
ActiveRecord::Base.connection.exec_query("#{query}")

从回复中,我了解到唯一的方法是直接执行 MySQL 查询。这里唯一的问题,似乎返回对象不是 ActiveRecord 对象,而是一个规则的哈希数组

标签: ruby-on-railsactiverecord

解决方案


推荐阅读