當前位置:首頁 » 存儲配置 » mysql字元串存儲過程

mysql字元串存儲過程

發布時間: 2022-06-27 14:21:46

A. mysql存儲過程中 如何拆分字元串

MySQL分割字元串應該如何實現呢?下面就為您介紹MySQL分割字元串的實現方法步驟,希望可以讓您對MySQL分割字元串有更多的了解。

例如:update `edw_video` set company = substring(keyword,1,length(SUBSTRING_INDEX(keyword,",",1)))

名稱:SPLIT_SUB_STR1(取得split字元串的第一段)
參數:str 要split的目標字元串 (輸入格式為『11,2,3,4,5,6』; 輸出為『2,3,4,5,6』)
delimiter 分隔符 (『,』)
split1 輸出第一項(『11』)
存儲過程
CREATE DEFINER=`root`@`%` PROCEDURE `SPLIT_SUB_STR0`(inout str VARCHAR(1000) ,delimiter VARCHAR(1), out split1 VARCHAR(20))

BEGIN
# 名稱 SPLIT_SUB_STR1 取得分割字元串的第一段字元
# 參數inout str VARCHAR(1000) ,delimiter VARCHAR(1), out split0 VARCHAR(20)
# 輸入完整字元串,輸出去掉取得第一項後的字元串; 分隔符; 輸出split的第一個項目

#分割出第一段字元串不包括分隔符的長度
DECLARE SUB_STR_LENGTH INT;

# SUBSTRING_INDEX函數取得目標字元串左側第n個分割符左側的部分,n為負時返回右側第n個的右部分
SET SUB_STR_LENGTH = length(SUBSTRING_INDEX(str,delimiter,1));

#截取第一段字元串,不包括分隔符,放入輸出參數里
SET split0 = substring(str, 1, SUB_STR_LENGTH);

# 取得去掉第一個字元串和分隔符的字元串,進行下次循環取得下個字元串
SET str = substring(str, SUB_STR_LENGTH + 2 );
#測試一下輸出是否正確
#SELECT SUB_STR_LENGTH, SUB_STR_SPLIT0, STR;
END

調用實例

CREATE DEFINER=`root`@`%` PROCEDURE `test`()
BEGIN
#目標字元串
set @a = 』1,2,3,4,5,6,12『;
# 分隔符
set @c = ',';
# 存儲風格後的字元串
set @b = '';

REPEAT
# 調用上面的存儲過程
CALL SPLIT_SUB_STR0(@a, ',', @c);
#將取得的字元串拼接,測試用
set @b = concat(@b, @c);
#當目標字元串為空時,停止循環
UNTIL @a = ''
END REPEAT;
# 查看結果
select @a, @c, @b;

END;

熱點內容
郵政登陸密碼是什麼意思 發布:2025-07-15 01:53:23 瀏覽:229
演算法與程序設計vb 發布:2025-07-15 01:50:39 瀏覽:719
什麼是測試腳本 發布:2025-07-15 01:44:58 瀏覽:514
商湯科技存儲負責人 發布:2025-07-15 01:24:21 瀏覽:252
文件夾如何批量替換文件名 發布:2025-07-15 01:19:15 瀏覽:68
ftp上傳網頁 發布:2025-07-15 01:13:09 瀏覽:182
音樂文件夾圖標 發布:2025-07-15 01:03:41 瀏覽:495
安卓機怎麼反向充電 發布:2025-07-15 01:03:40 瀏覽:501
電腦使用華為雲伺服器 發布:2025-07-15 00:48:10 瀏覽:534
中考應該如何排解壓力 發布:2025-07-15 00:17:54 瀏覽:363