您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“MySQL怎么用分隔符分隔字符串”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“MySQL怎么用分隔符分隔字符串”吧!
可以使用如下函數(shù)
SUBSTRING_INDEX( i.final_car_type, ' ', 1 )
i.final_car_type 即 需要分隔的字符串
’ ’ 即 用空格分隔該字符串
1 即:取出該空格之前的所有字符
也就是說,如果count是正數(shù),那么就是從左往右數(shù),第N個分隔符的左邊的全部內(nèi)容。相反,如果是負數(shù),那么就是從右邊開始數(shù),第N個分隔符右邊的所有內(nèi)容
如果count 是1
表里數(shù)據(jù):東風風神全新AX7馬赫版 DF 21(天窗版)
拆分后:東風風神全新AX7馬赫版
如果count 是-1
表里數(shù)據(jù):東風風神全新AX7馬赫版 DF 21(天窗版)
拆分后:21(天窗版)
DELIMITER $$ CREATE DEFINER=`root`@`%` PROCEDURE `proc_split_Id`(in selectIds blob(65535), in splitChar varchar(2)) BEGIN set @i=0; CREATE TEMPORARY TABLE if not exists Id_Result_s(Id long NOT NULL); truncate table Id_Result_s; SET @cnt = 1+(LENGTH(selectIds) - LENGTH(REPLACE(selectIds,splitChar,''))); set @i=1; start transaction; WHILE @i <=@cnt DO SET @result = REPLACE(SUBSTRING(SUBSTRING_INDEX(selectIds, splitChar, @i), LENGTH(SUBSTRING_INDEX(selectIds, splitChar, @i -1)) + 1), splitChar, ''); INSERT INTO Id_Result_s(Id) VALUES (@result ); SET @i = @i + 1; END WHILE; commit; END
selectIds為需要拆分的字符串,splitChar為分隔符. 拆分的結(jié)果保存在臨時表Id_Result_s中.
while中有insert語句,循環(huán)插入.在while前后加上start transaction和commit可以提高效率.
到此,相信大家對“MySQL怎么用分隔符分隔字符串”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。