我正在编写一些调度代码来检查发生的事件Daily
、Weekly
和。Fortnightly
Monthly
到目前为止,我已经弄清楚了如何做Daily
,但不是。我的表结构是...Weekly
Monthly
Fortnightly
CREATE TABLE IF NOT EXISTS `event_log` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`export_schedule` int(11) NOT NULL,
`import_schedule` int(11) NOT NULL,
`exception` TEXT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
资源
例如,当前日期是11-1-2012
(11 月 1 日),最后一个事件发生在13 天前10-20-2012
(2012 年 10 月 20 日),如果我要查询该事件,MySQL 将返回. 使用我当前的查询。MySQL returned an empty result set (i.e. zero rows). (Query took 0.0004 sec)
SELECT * FROM event_log WHERE MOD(DATEDIFF(date,CURDATE()),14)=0
(当前双周的事件)但它没有给我任何结果。
如何查询过去两周内发生的事件?