[英]Select first free datetime between two time in mysql
我想找到一个最佳的约会时间,该日期之前有20分钟的空闲时间,过去也至少有20分钟。 所以
在数据库中:
如果我在11:15跑步,我想获得2014-03-24 11:30,因为11-30-11:10 = 20和12:00-11:30> = 20。
因此,我需要选择一个日期时间而不是数据库中的一行(并在以后插入)。 我需要在数据库中查找之前和之后有20-20分钟空白期的最近日期。 否则,我正在数据库中寻找40分钟的漏洞并获得中间结果。
这有可能在mysql查询中解决吗? 谢谢 :)
要获取超过20分钟前的最近时间戳记:
select *
from table t
where datetimefield < now() - interval 20 minutes
order by datetimefield desc
limit 1;
如果您只想限制20分钟后没有时间戳记的时间戳记:
select *
from table t
where datetimefield < now() - interval 20 minutes and
not exists (select 1
from table t2
where t2.datetimefield between t.datetimefield and t.datetimefield + interval 20 minutes
)
order by datetimefield desc
limit 1;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.