欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

mysql中关于时间点的判断

程序员文章站 2022-06-01 23:01:29
...
最近做一个项目遇到这样一个问题:

有一条关于超市活动的字段,这条活动比如开始时间是2013-10-7 结束时间是2013-10-15,存储到数据库mysql中的时候存储的都是当前日期的时间戳,使用php的strtotime()这个函数,而使用这个函数存储的当然是当前日期第0:0:0这个时间点的时间戳,实际上2013-10-15这天活动在当天的24小时以内还是有效的,并不是到当天的0:0:0就失效。

所以在做contab的时候就需要面临这么一个问题,不能使用时间戳做判断,而必须使用当前日期为几号来判断这条活动是否过期。比如每天凌晨1点做contab,搜寻数据库,15号凌晨这天的日期号为15,不大于过期日期,所以不设置这条记录过期,16号凌晨判断,当前日期号大于过期日期,那么这条记录设置为过期。

具体时间可以这么操作:

mysq中 DATE_FORMAT(now(), '%Y-%m-%d %H:%i:%s');返回格式化后的日期

TO_DAYS(时间戳)返回该时间戳下的日期号,

TO_DAYS(NOW()) - TODAYS(过期时间戳) >0 那么则判断为失效

相关标签: mysql