如果你真的想用ruby解决这个问题,你可以>>在处理a时使用它Date来增加N几个月(例如11,这将给你的客户一些时间来处理付款).
当你有这个递增的日期时,你应该将它与当前日期的比较,看它是否小于或等于(即日期是过去的日期),如果是的话; 发出你的电子邮件.
>> (Date.strptime('2012-07-07') >> 11).to_s
=> "2013-06-07"
>> if (Date.strptime('2011-06-15') >> 11) < DateTime.now
>> print "More than 11 months has passed!"
>> end
More than 11 months has passed!=> nil
Run Code Online (Sandbox Code Playgroud)
但是,您更好地直接在SQL查询中解决此问题,这可以归结为如下所示:
SELECT field1, field2, ..., fieldN
FROM `customers_table`
WHERE ADDDATE(last_payment, INTERVAL 11 MONTHS) <= NOW ()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
238 次 |
| 最近记录: |