在rails或sql中检索其开始日期和结束日期之间的日期介于今天和十天之后的数据

时间:2012-11-25 12:48:05

标签: mysql ruby-on-rails ruby-on-rails-3

我想检索开始日期和结束日期之间的日期介于今天和十天之后的数据。我在rails中进行此操作但即使我在MySQL中获取查询,我也可以将其转换为rails活动记录。

像这样的东西:

select * from users where( between users.from and users.to =  between '2012-11-25 11:52:33' and '2012-12-05 11:52:33')

2 个答案:

答案 0 :(得分:1)

如果a C。此外,curdate()函数返回当前日期(“今天”)。要计算未来十天的日期,您可以使用+ interval 10 day

结合您获得的这些信息:

select ... where users.to > curdate() 
and users.from < curdate() + interval 10 day

答案 1 :(得分:0)

Follwing是逻辑片段而不是确切的代码。请试试。

select * from users 
where users.fromDate between '2012-11-25 11:52:33' and '2012-12-05 11:52:33'
and users.toDate between '2012-11-25 11:52:33' and '2012-12-05 11:52:33';

检查* SQLFIDDLE中的以下示例代码

根据您的问题进行编辑&#39; S REPHRASING

猜猜你会好转,

where users.from between users.from and users.from + interval 10day
and users.to <= user.from + interval 10 day

这意味着,你的from date可以是任何东西(今天,昨天,一个月前,两年到未来......)。因此,您的to-date将针对与上述from-date

间隔10天的任何日期进行验证

希望这是有道理的......但是,再次,Joni的答案将填补你今天的意见。 :)