CREATE DEFINER=`root`@`localhost` PROCEDURE `test4`()
BEGIN
declare GroupArray text;
DECLARE i INT DEFAULT 0;
DECLARE loopcount INT DEFAULT 0;
declare GroupId varchar (5);
set GroupArray=(select group_concat(distinct groupId) from EventList_View);
SET loopcount = (SELECT LENGTH(GroupArray) -
LENGTH(REPLACE(GroupArray,',', '')));
select loopcount;
WHILE i <= loopcount DO
SET i = i + 1;
SET GroupId = (SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(GroupArray,
',', i),',', -1));
select GroupId;
END WHILE;
END
这是我的查询我试图应用while循环,我想得到所有groupId但GroupArray [1,2,3]我得到的价值但在循环计数我得到0可以任何一个请告诉我在哪里做错了。为什么我无法得到循环计数null以及为什么我没有得到组1,2,3的值