mysql存储过程实现split示例
时间:2021-07-01 10:21:17
帮助过:25人阅读
代码如下:
call PROCEDURE_split('分享,代码,片段',',');
select * from splittable;
代码如下:
drop PROCEDURE if exists procedure_split;
CREATE PROCEDURE `procedure_split`(
inputstring varchar(1000),
delim char(1)
)
begin
declare strlen int DEFAULT length(inputstring);
declare last_index int DEFAULT 0;
declare cur_index int DEFAULT 1;
declare cur_char VARCHAR(200);
declare len int;
drop temporary table if exists splittable;
create TEMPORARY table splittable(
value VARCHAR(20)
) ;
WHILE(cur_index<=strlen) DO
begin
if substring(inputstring from cur_index for 1)=delim or cur_index=strlen then
set len=cur_index-last_index-1;
if cur_index=strlen then
set len=len+1;
end if;
insert into splittable(`value`)values(substring(inputstring from (last_index+1) for len));
set last_index=cur_index;
end if;
set cur_index=cur_index+1;
END;
end while;
end ;
您可能感兴趣的文章:
- python连接mysql调用存储过程示例
- Mysql存储过程和函数区别介绍
- MySql学习心得之存储过程
- MySQL存储过程中游标循环的跳出和继续操作示例
- Mysql存储过程循环内嵌套使用游标示例代码
- MySQL 存储过程中执行动态SQL语句的方法
- Node.js中调用mysql存储过程示例
- PHP调用MySQL存储过程并返回值的方法
- php调用mysql存储过程实例分析
- MySql存储过程学习知识小结