mysql存储过程实现split示例

2023年 4月 23日 20.5k 0

复制代码 代码如下: call PROCEDURE_split('分享,代码,片段',','); select * from splittable; 复制代码 代码如下: drop PROCEDURE if exists procedure_split; CREATE PROCEDURE `procedure_split`( inputstring varchar(1000), delim

复制代码 代码如下: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 ;

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论