mysql中递归查询的实现

Posted chenhuan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql中递归查询的实现相关的知识,希望对你有一定的参考价值。

1,执行如下代码即可实现递归查询:
delimiter //
CREATE FUNCTION `getParLst`(rootId INT)
RETURNS varchar(1000)

BEGIN
DECLARE sTemp VARCHAR(1000);
DECLARE sTempChd VARCHAR(1000);

SET sTemp = ‘$‘;
SET sTempChd =cast(rootId as CHAR);

WHILE sTempChd is not null DO
SET sTemp = concat(sTemp,‘,‘,sTempChd);
SELECT group_concat(id) INTO sTempChd FROM treeNodes where FIND_IN_SET(pid,sTempChd)>0;
END WHILE;
RETURN sTemp;
END
//

2,如果有报错,请查询log_bin
例如:
SHOW VARIABLES LIKE ‘log_bin_trust_function_creators‘;
解决方法, 在mysql中执行如下语句:
SET GLOBAL log_bin_trust_function_creators=TRUE;
再查看
SHOW VARIABLES LIKE ‘log_bin_trust_function_creators‘;

OK解决!




























以上是关于mysql中递归查询的实现的主要内容,如果未能解决你的问题,请参考以下文章

mysql怎么实现递归查询数据

MySQL递归查询,实现上下级联查,父子级查询

mysql递归查询

MySQL怎样做递归查询

mysql如何递归汇总?

mysql 查询树形接口sql