php - 如何查找日期是否适合 PHP 或 MySQL 中的间隔?

标签 php mysql datetime intervals

假设我有一个日期时间,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 小时内一次。 (不,目前我不知道我将如何处理 DST :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 小时的倍数。

关于php - 如何查找日期是否适合 PHP 或 MySQL 中的间隔?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6299090/

相关文章:

php - 如何在自定义 PHP 脚本中调用 WordPress 函数

php - 无法使用 iframe 选项卡访问 Facebook signed_request

php - 从URL选择标签到数据库

python - 正确的 Django-ORM 中的 latin-1 编码的 UTF-8

Javascript时刻日期转换和格式问题

php - 如何在php中的其他字符之间设置一个字符

基于PHP session 的登录系统安全

mysql - 在mysql中使用varchar(14)作为日期时间

java - 在 Spring 表单标签中显示日期 (java.sql.Date) 时出错

javascript - 使用php将印度标准时间转换为mysql日期时间格式