mysql存储过程实例,查询多参数赋值

Posted adolfmc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql存储过程实例,查询多参数赋值相关的知识,希望对你有一定的参考价值。

drop procedure if exists p_for_create_customer;

create procedure p_for_create_customer()
begin
declare ii int default 0;
declare i int default 1;
declare minss int default 0;
declare idd int;
declare start_d datetime;
declare channel_code_ VARCHAR(255);
declare end_d datetime;
declare minutes int;
select id,countt,start_date,end_date,channel_code into idd,ii,start_d,end_d,channel_code_ from schedu_create_info where is_effective=‘true‘ limit 1;
select timestampdiff(minute,start_d,end_d) into minss from dual;
select idd from dual;
loop_example : loop
update schedu_create_info set is_effective=‘true‘ where id = idd;
set i = i + 1;
insert into crm_t_customer (mobile ,name ,idcard,channel_code,create_date)
value(CONCAT(‘1*********‘,rand_num(0,9)),‘***‘,‘***‘,channel_code_,DATE_ADD(start_d,INTERVAL rand_num(0,minss) MINUTE) );
if i >ii then
leave loop_example;
end if;
end loop;
end;

call p_for_create_customer();

 

 

 

 

drop procedure if exists p_for_create_customer;

create procedure p_for_create_customer()
begin
declare ii int default 0;
declare i int default 1;
declare minss int default 0;
declare idd int;
declare start_d datetime;
declare channel_code_ VARCHAR(255);
declare end_d datetime;
declare minutes int;
select id,countt,start_date,end_date,channel_code into idd,ii,start_d,end_d,channel_code_ from schedu_create_info where is_effective=‘true‘ limit 1;
select timestampdiff(minute,start_d,end_d) into minss from dual;
select idd from dual;
loop_example : loop
update schedu_create_info set is_effective=‘false‘ where id = idd;
set i = i + 1;
insert into crm_t_customer (mobile ,name ,idcard,channel_code,create_date)
value(CONCAT(‘1*********‘,rand_num(0,9)),‘***‘,‘***‘,channel_code_,DATE_ADD(start_d,INTERVAL rand_num(0,minss) MINUTE) );
if i >ii then
leave loop_example;
end if;
end loop;
end;

call p_for_create_customer();

delete from crm_t_customer;
select * from schedu_create_info;
select * from crm_t_customer;
call p_for_create_customer();

select rand_num(2,54);


alter event event_task_customer ON COMPLETION PRESERVE ENABLE;
alter event event_task_customer ON COMPLETION PRESERVE DISABLE;
DROP EVENT event_task_customer;


create event event_task_customer
on schedule every 2 minute
on completion PRESERVE
do call p_for_create_customer();

 

以上是关于mysql存储过程实例,查询多参数赋值的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 如何给存储过程赋值

mysql 存储过程怎么赋值?

Oracle存储过程中,查询结果有多行如何赋值

MySQL存储过程实例

sqlserver 存储过程中变量赋值

Mysql将存储过程执行后的值赋值给变量