drop procedure if exists move_track_data;
delimiter //
create procedure move_track_data()
begin
declare i int default 0;
start transaction;
set i = 1;
case
when i = 1 then
select 'is 1';
when i = 2 then
select 'is 2';
else
select 'is 3';
end case;
commit;
end;
// call move_track_data();
delimiter ;
select * from score_driving_track where trackid in( select trackid from score_driving_track where trackid % 10 = 1); insert into score_driving_track_0 select * from score_driving_track where trackid in( select trackid from score_driving_track where trackid % 10 =0); ####################################################################################################3 set time_zone = '+8:00';
set GLOBAL event_scheduler = 1;
use test;
drop event if exists upload_to_sdmp;
DELIMITER //
create event upload_to_sdmp
on schedule every 1 week starts timestamp '2015-10-12 02:00:00'
do call move_score_driving_track_data(); drop procedure if exists move_score_driving_track_data;
delimiter //
create procedure move_score_driving_track_data()
begin
declare i int default 0;
declare t_error integer default 0;
declare continue handler for sqlexception set t_error = 1;
start transaction;
set i = 0;
while i < 10 do
set @sqlTrackids = concat('select group_concat(distinct trackid) into @trackids from score_driving_track where trackid % 10 = ', i);
select @sqlTrackids;
prepare sqlTrackidsNormal from @sqlTrackids;
execute sqlTrackidsNormal;
select @trackids; set @sqlInsert = concat('insert into score_driving_track_', i, ' select * from score_driving_track where find_in_set(trackid, ''', @trackids, ''')');
select @sqlInsert;
prepare sqlInsertNormal from @sqlInsert;
execute sqlInsertNormal; set @sqlDelete = concat('delete from score_driving_track', ' where find_in_set(trackid ,''', @trackids, ''')');
select @sqlDelete;
prepare sqlDeleteNormal from @sqlDelete;
#execute sqlDeleteNormal; set i = i + 1;
end while;
if t_error = 1 then
rollback;
else
commit;
end if;
end;
//
call move_score_driving_track_data();
SELECT @@global.sort_buffer_size; select * from score_driving_track where trackid >= 2270;
select * from score_driving_track_0;
select * from score_driving_track_1;
select * from score_driving_track_2;
select * from score_driving_track_3;
select * from score_driving_track_4;
select * from score_driving_track_5;
select * from score_driving_track_6;
select * from score_driving_track_7;
select * from score_driving_track_8;
select * from score_driving_track_9; delete from score_driving_track_0;
delete from score_driving_track_1;
delete from score_driving_track_2;
delete from score_driving_track_3;
delete from score_driving_track_4;
delete from score_driving_track_5;
delete from score_driving_track_6;
delete from score_driving_track_7;
delete from score_driving_track_8;
delete from score_driving_track_9; SET GLOBAL group_concat_max_len=1024000; show variables like "group_concat_max_len";
##################################################################################### call move_score_driving_track_data();
SELECT @@global.sort_buffer_size; SET GLOBAL group_concat_max_len=1024000; show variables like "group_concat_max_len"; select group_concat(distinct trackid) from score_driving_track where trackid % 10 = 0;
SELECT @@global.group_concat_max_len;
show warnings;
#[mysqld]
#explicit_defaults_for_timestamp=true
#group_concat_max_len=102400
select distinct trackid from score_driving_track where trackid % 10 = 0; select group_concat(distinct trackid) from score_driving_track where trackid % 10 = 0 and trackid < 50; delimiter ;
select concat('score_driving_track_', 1); select * from score_driving_track_0; delete from score_driving_track_0; ##############################################################################
set time_zone = '+8:00';
set GLOBAL event_scheduler = 1;
use test;
drop event if exists upload_to_sdmp;
DELIMITER //
create event upload_to_sdmp
on schedule every 1 second #starts timestamp '2014-07-30 10:00:00'
do
begin
insert into b values(3,'');
insert into b values(2,'');
end
//
DELIMITER ; select * from b; select group_concat(trackid) into @temp from score_driving_track where trackid < 100;
select @temp;
select * from score_driving_track where find_in_set(trackid, @temp);
select REPLACE(@temp,'''''''',''); select CHAR_LENGTH(@temp)-CHAR_LENGTH(REPLACE(@temp,'','')) + 1; select * from score_driving_track where trackid in (select group_concat(trackid) from score_driving_track where trackid < 50); select * from score_driving_track where find_in_set(trackid, (select group_concat(distinct trackid) from score_driving_track where trackid < 50)); select * from users;

MySQL 存储过程 定时任务的更多相关文章

  1. Mysql 存储过程+定时任务,完成分区自动维护

    建表: drop table if exists terminal_parameter; CREATE TABLE `terminal_parameter` ( `terminal_parameter ...

  2. 如何写mysql的定时任务

     什么是事件: 一组SQL集,用来执行定时任务,跟触发器很像,都是被动执行的,事件是因为时间到了触发执行,而触发器是因为某件事件(增删改)触发执行: 查看是否开启: show variables li ...

  3. Mysql编写定时任务事件

    原文:Mysql编写定时任务事件 场景: 例如:某系统,用户每天只能拥有一次的抽奖机会,抽过后当天就不可再抽,但是过了24:00点后用户就重新拥有一次抽奖机会.像这种需要数据库定时对某个字段进行更新操 ...

  4. MySQL job/定时任务/event 学习

    参考文章: https://blog.csdn.net/qq_21108311/article/details/82589850 https://blog.csdn.net/qq_27238185/a ...

  5. MySQL存储过程(转)

    一.MySQL 创建存储过程 "pr_add" 是个简单的 MySQL 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b" ...

  6. MySql存储过程

    MySQL 存储过程 ```sql CREATE PROCEDURE myprocedure (IN para01 INTEGER) BEGIN DECLARE var01 CHAR(10); IF ...

  7. mysql存储过程和存储函数

    mysql存储过程和存储函数 存数函数代码示例: DROP PROCEDURE IF EXISTS calc_ci_day_suc_rate; delimiter // CREATE FUNCTION ...

  8. mysql存储过程编写-入门案例-遁地龙卷风

    (-1)写在前面 这篇文章只是简要的叙述了mysql存储过程编写的基本概念. 我使用的mysql版本是5.7.9-log. 参照<<深入浅出MySQL>>. (0) delim ...

  9. MySQL存储过程动态SQL语句的生成

    用Mysql存储过程来完成动态SQL语句,使用存储过程有很好的执行效率: 现在有要求如下:根据输入的年份.国家.节假日类型查询一个节假日,我们可以使用一般的SQL语句嵌入到Java代码中,但是执行效率 ...

随机推荐

  1. 分布式Apache ZooKeeper-3.4.6集群安装

    fesh个人实践,欢迎经验交流!本文Blog地址:http://www.cnblogs.com/fesh/p/3900253.html Apache ZooKeeper是一个为分布式应用所设计的开源协 ...

  2. 117 FP页面无法查看

    用户表示117 FP页面无法查看,提示如下错误: 跟进: 1.进入FP服务器可看到以下错误 这个错误的框就表示FP的一个进程报错,自动断掉了,需要重新跑一次EXIT,INIT,PLAN,EXPORT, ...

  3. JDBC basic

    http://www.tutorialspoint.com/jdbc/jdbc-sample-code.htm maven <dependency> <groupId>mysq ...

  4. Adobe Dreamweaver(DW)

    下载破解版地址:http://www.frontopen.com/1179.html 详情地址:http://baike.baidu.com/link?url=8Jv88BJ-wXeyABAbYEMl ...

  5. 一步一步写平衡二叉树(AVL树)

    平衡二叉树(Balanced Binary Tree)是二叉查找树的一个进化体,也是第一个引入平衡概念的二叉树.1962年,G.M. Adelson-Velsky 和 E.M. Landis发明了这棵 ...

  6. (转)C#中两个问号和一个问号 ??

    小问题难倒很多人.今天发现了这个问题,搜了很长时间才看到记录下. 实例:dt.Columns.Add(firstRow.GetCell(i).StringCellValue ?? string.For ...

  7. js点击按钮倒计时setTimeout和setInterval

    setTimeout() 用于在指定的毫秒数后调用函数或计算表达式,只执行 code 一次. setInterval() 可按照指定的周期(以毫秒计)来调用函数或计算表达式,不停地调用函数,直到 cl ...

  8. python profile

    一.profile,cProfile 1. python -m cProfile myprogram.py python -m profile myprog.py2. 使用import profile ...

  9. Uber从Postgres切换到MySQL

    Uber工程师在官方博客上描述了他们为什么要从 Postgres 切换到 MySQL 数据库.Uber的早期架构是由 Python编写的后端应用构成,使用了 Postgres 数据库.但此后,Uber ...

  10. easyui combotree 默认 初始化时就选中

    做得权限管理系统,用combotree来控制权限,combotree是通过后台json来初始化,但是前台不是选中状态. 下面是核心代码已经标红. $('#txtTree').combotree({ m ...