mysql定时任务,每天凌晨1点执行

时间:2024/2/21 11:09:28 赞:0 踩:0 阅:134 标签:mysql

执行mysql语句 DO后是需要执行的sql

每天凌晨1点执行

CREATE EVENT IF NOT EXISTS temp_event
ON SCHEDULE EVERY 1 DAY STARTS DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY), INTERVAL 1 HOUR)
ON COMPLETION PRESERVE ENABLE
DO update users set support=0 where support=1;


每隔一分钟执行

CREATE event IF NOT EXISTS temp_event ON SCHEDULE EVERY 1 MINUTE
ON COMPLETION PRESERVE
DO update users set support=0 where support=1;


查看定时任务

SELECT * FROM information_schema.events;
关闭定时任务

DROP event temp_event;

MYSQL查询今天、昨天、7天前、30天、本月数据

 

今天:

SELECT * FROM 表名 WHERE TO_DAYS( 时间字段名) = TO_DAYS(NOW());

昨天:

SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1;

7天前:

SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名);

30天:

SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名);

本月:

SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' );

评论一下

发表评论

注册用户登录后才能发表评论,请登录注册