假设我有一个日期时间,2011 年 6 月 16 日 7:00。我希望能够在 2011 年 8 月 5 日的 7:00 进行检查,并能够知道它恰好是自第一次日期以来 1 天的倍数,而 7:01 不算在内,因为它不是精确倍数。
另一个测试集:假设 2011 年 6 月 16 日 7:00,我想检查特定分钟是否在从那时起正好 2 小时的间隔内。因此,9:00、11:00、13:00 等都算在内,但 9:30 和 10:00 则不算。这种情况可能会持续数天甚至数月 - 9 月 1 日 7:00 仍算作每 2 小时以内。 (不,目前我不知道如何处理夏令时:D)
我想了一会儿,想不出 PHP 或 MySQL 中已有的任何东西可以轻松地做到这一点,但天哪,它可以,所以我想在开始重新发明轮子之前把它扔掉并询问一下。
遗憾的是,这是 PHP 5.1 上的。
select *
from test
where datetimefield > '2011-06-16 07:00:00'
and
mod(timestampdiff(second,'2011-06-16 07:00:00',datetimefield),7200) = 0
此示例将为您提供大于“2011-06-16 07:00:00”的所有记录,其中字段恰好是 2 小时的倍数。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)