Heim > Datenbank > MySQL-Tutorial > Hauptteil

Gespeicherte MySQL-Prozedur -> Aufteilung langer Zeichenfolgen

黄舟
Freigeben: 2017-02-17 11:41:01
Original
1265 Leute haben es durchsucht

Gespeicherte MySQL-Prozedur-->Aufteilung langer Zeichenfolgen

DELIMITER $$ -- Trennzeichen
VERWENDEN Sie „test“. $$ --
DROPPROCEDURE IF EXISTS `pro_split`$$ -- Wenn es bereits existiert, löschen Sie proc

CREATE PROCEDURE `test`.`pro_split` (varchar rids)
BEGIN
         DECLAREpo INT DEFAULT 0;  
-- 
定义一个位置点
         DECLARErid VARCHAR(20) DEFAULT "";   
-- 
定义一个
rid
变量
         DECLARErid_tmp VARCHAR(20) DEFAULT "";
         SET po= LOCATE(",",rids);  
-- 
找到第一个
,
的位置点
         SET rid=LEFT(po-1,rids);  
 -- 
截取出第一个
rid
         SETrid_tmp=SUBSTR(rids,po+1);   
-- 
设置剩下还没有处理的
rids
长字符串
Nach dem Login kopieren


WHILEpo >0 DO    
-- 
开始循环处理
rids
长字符串
                  INSERTINTO b_tmp SELECT pid,rid;  
--
把截取出来的
rid
放入临时表中
                  SET po =LOCATE(",",rid_tmp); 
 -- 
获取未处理中的长字符串的
,
的第一个位置点
                  SET rid=LEFT(po-1,rid_tmp);   
--
取出每一个循环中截取出来的
rid
                  SETrid_tmp=SUBSTR(rid_tmp,po+1);  
 -- 
重新设置未处理的长字符串。
         ENDWHILE  ;
Nach dem Login kopieren

END$$

DELIMITER;



PS: Die Standardregel zum Aufteilen von Zeichenfolgen lautet „“,“ Wenn Sie flexibler sein möchten, können Sie einen In-Parameter festlegen und ihn beim Aufruf von proc ersetzen.

Das Obige ist der Inhalt der gespeicherten MySQL-Prozedur -> Aufteilung langer Zeichenfolgen. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn). )!


Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage