拆分字符串并循环遍历 MySQL 过程中的值?
要拆分字符串并循环遍历 MySQL 过程中的所有值,您不需要使用REPLACE()函数。要理解,首先创建一个存储过程,然后创建一个表并使用一些值调用存储过程。该值将被插入到表中。
创建存储过程的查询如下:
mysql> DELIMITER //mysql> CREATE PROCEDURE SP_SplitString(Value longtext)
-> BEGIN
-> DECLARE front TEXT DEFAULT NULL;
-> DECLARE frontlen INT DEFAULT NULL;
-> DECLARE TempValue TEXT DEFAULT NULL;
-> iterator:
-> LOOP
-> IF LENGTH(TRIM(Value)) = 0 OR Value IS NULL THEN
-> LEAVE iterator;
-> END IF;
-> SET front = SUBSTRING_INDEX(Value,',',1);
-> SET frontlen = LENGTH(front);
-> SET TempValue = TRIM(front);
-> INSERT INTO store (allValues) VALUES (TempValue);
-> SET Value = INSERT(Value,1,frontlen + 1,'');
-> END LOOP;
-> END //
mysql> DELIMITER ;
现在创建一个表来存储存储过程的值。创建表的查询。
mysql> CREATE TABLE store(-> Id int NOT NULL AUTO_INCREMENT,
-> allValues varchar(30),
-> PRIMARY KEY(Id)
-> );
显示表中的所有记录。查询如下:
mysql> select *from store;Empty set (0.00 sec)
最初我们在表中没有任何记录。让我们使用 CALL 命令调用存储过程。查询如下:
mysql> call SP_SplitString('Hi,Hello,Good Morning,Bye');
调用完上面的存储过程后,让我们再次检查表记录。显示表中所有记录的查询如下:
mysql> select *from store;
以下是输出:
+----+--------------+| Id | allValues |
+----+--------------+
| 1 | Hi |
| 2 | Hello |
| 3 | Good Morning |
| 4 | Bye |
+----+--------------+
4 rows in set (0.00 sec)
以上是 拆分字符串并循环遍历 MySQL 过程中的值? 的全部内容, 来源链接: utcz.com/z/335632.html