mysql创建一个存储过程并创建定时任务
2016-11-18 09:58
423 查看
1、创建存储过程
SQL预览
DROP PROCEDURE IF EXISTS `sp_evaluation_point`;
CREATE DEFINER = `root`@`%` PROCEDURE `sp_evaluation_point`()
BEGIN
#Routine body goes here...
#定义参数
DECLARE
yesterday date;
DECLARE
_day VARCHAR (50);
DECLARE
point INT (11);
DECLARE
begin_date VARCHAR (50);
DECLARE
end_date VARCHAR (50);
#设置值
SET yesterday = CURDATE() - 1;
SET begin_date = CONCAT(yesterday, ' 00:00:00');
SET end_date = CONCAT(yesterday, ' 23:59:59');
#数据插入到数据库
INSERT INTO st_evaluation_point (
_day,
user_id,
head_img,
dimension_id,
class_id,
grade_id,
point
) SELECT
DATE_FORMAT(
table1.evaluate_time,
'%Y-%m-%d'
),
table1.evaluated_user_id,
table2.path,
table6.dimension_id,
table4.classroom_id,
table5.grade_number,
SUM(table1.cert)
FROM
web_stu_evaluate table1
LEFT JOIN web_sch_image table2 ON table2.obj_id = table1.evaluated_user_id
AND table2.obj_type = '03'
LEFT JOIN web_sch_student table3 ON table3.user_id = table1.evaluated_user_id
LEFT JOIN web_student_classroom table4 ON table4.student_id = table3.id
LEFT JOIN web_sch_classroom table5 ON table5.id = table4.classroom_id
LEFT JOIN web_sch_quota table6 ON table6.id = table1.quota_id
WHERE
table1.evaluate_time >= begin_date
AND table1.evaluate_time <= end_date
GROUP BY
table1.evaluated_user_id;
END;
2、创建每隔一天运行存储过程的定时任务
CREATE DEFINER=`root`@`%`
EVENT `NewEvent`
ON SCHEDULE EVERY 1 DAY STARTS '2016-11-10 00:00:00'
ON COMPLETION PRESERVE
ENABLE
DO
call sp_evaluation_point();
SQL预览
DROP PROCEDURE IF EXISTS `sp_evaluation_point`;
CREATE DEFINER = `root`@`%` PROCEDURE `sp_evaluation_point`()
BEGIN
#Routine body goes here...
#定义参数
DECLARE
yesterday date;
DECLARE
_day VARCHAR (50);
DECLARE
point INT (11);
DECLARE
begin_date VARCHAR (50);
DECLARE
end_date VARCHAR (50);
#设置值
SET yesterday = CURDATE() - 1;
SET begin_date = CONCAT(yesterday, ' 00:00:00');
SET end_date = CONCAT(yesterday, ' 23:59:59');
#数据插入到数据库
INSERT INTO st_evaluation_point (
_day,
user_id,
head_img,
dimension_id,
class_id,
grade_id,
point
) SELECT
DATE_FORMAT(
table1.evaluate_time,
'%Y-%m-%d'
),
table1.evaluated_user_id,
table2.path,
table6.dimension_id,
table4.classroom_id,
table5.grade_number,
SUM(table1.cert)
FROM
web_stu_evaluate table1
LEFT JOIN web_sch_image table2 ON table2.obj_id = table1.evaluated_user_id
AND table2.obj_type = '03'
LEFT JOIN web_sch_student table3 ON table3.user_id = table1.evaluated_user_id
LEFT JOIN web_student_classroom table4 ON table4.student_id = table3.id
LEFT JOIN web_sch_classroom table5 ON table5.id = table4.classroom_id
LEFT JOIN web_sch_quota table6 ON table6.id = table1.quota_id
WHERE
table1.evaluate_time >= begin_date
AND table1.evaluate_time <= end_date
GROUP BY
table1.evaluated_user_id;
END;
2、创建每隔一天运行存储过程的定时任务
CREATE DEFINER=`root`@`%`
EVENT `NewEvent`
ON SCHEDULE EVERY 1 DAY STARTS '2016-11-10 00:00:00'
ON COMPLETION PRESERVE
ENABLE
DO
call sp_evaluation_point();
相关文章推荐
- oracle利用job创建一个定时任务,定时调用存储过程
- mysql创建定时执行存储过程任务
- MySQL定时任务的创建(存储过程)
- mysql创建定时执行存储过程任务
- mysql创建定时执行存储过程任务
- MySql 定时任务和存储过程,每月创建一张表
- MySQL创建一个固定频率执行且自定义"开始"时间的定时任务event
- MySQL CREATE EVENT创建任务计划 定时执行任务(转)
- mysql创建定时任务
- MySQL 存储过程 定时任务
- mysql创建定时任务
- Oracle创建定时任务与存储过程
- mysql 定时任务创建
- mysql创建定时任务
- mysql如何创建一个定时事件
- MySQL数据库的分区表、存储过程、event定时任务的创建
- mysql 如何创建一个简单的存储过程
- Mysql 存储过程+定时任务,完成分区自动维护
- MySql创建一个存储过程
- 如何创建一个定时任务,并…