drop PROCEDURE if exists string_split;
CREATE PROCEDURE `string_split`(
inputstring varchar(1000),
delim char(1),id_item int
)
begin
declare strlen int DEFAULT length(inputstring)-4;
declare last_index int DEFAULT 0;
declare cur_index int DEFAULT 1;
declare cur_char VARCHAR(200);
declare len int;
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;
update test_table set `hour` =(substring(inputstring from (last_index+1) for len)) , `day`=(substring(inputstring from (last_index-10) for len+2)) where item_id = id_item;
set last_index=cur_index;
end if;
set cur_index=cur_index+1;
END;
end while;
end ;
数据库对字符串进行分割
最新推荐文章于 2023-11-30 21:41:39 发布