需要在MySQL数据库中配置
group_concat_max_len = 4294967295
函数如下:
CREATE DEFINER=`root`@`%` FUNCTION `queryChilds`(`uid` varchar(32)) RETURNS longtext CHARSET utf8
BEGIN
DECLARE sTemp LONGTEXT;
DECLARE sTempChd LONGTEXT;
SET sTemp = '';
SET sTempChd = uid;
WHILE sTempChd is not NULL DO
SET sTemp = CONCAT(sTemp,',',sTempChd);
SELECT group_concat(id) INTO sTempChd FROM t_user where FIND_IN_SET(referrer,sTempChd)>0;
END WHILE;
return sTemp;
END
本文详细介绍了在MySQL数据库中如何配置group_concat_max_len变量以优化GROUP_CONCAT函数的性能,并提供了一个自定义函数queryChilds的示例,该函数通过递归方式查询用户及其子用户的ID。
252

被折叠的 条评论
为什么被折叠?



