【发布时间】:2016-02-05 05:07:07
【问题描述】:
使用 Rails 4.2、Ruby 2.1.7。 PostgreSQL 9.4
当我只有一个整数作为参数时,我想查找特定月份的所有记录。
例如1 = 一月,2 = 二月
现在我有(start_time 是我的datetime 字段)
def self.by_month(month)
where('extract(month from start_time) = ?', month)
end
生成的 SQL 查询是:
SELECT "jobs".* FROM "jobs" WHERE (extract(month from start_time) = 1)
【问题讨论】:
-
格式在这里很重要。尝试以
yyyy/mm/dd格式创建。 -
@Pavan 月份的格式?如何创建
Date.new? -
显示一些示例数据和您正在运行的 SQL 查询。还有
month变量的数据类型是什么。那应该是一个整数,因为extract()返回一个整数 -
好的,那么
Feb 1st 00:00是什么意思?这是您的输入数据吗?帮助我了解你,这样我才能帮助你。我没有找到你卡住的地方。
标签: ruby-on-rails postgresql activerecord