mysql自定义函数实现递归查询

DROP FUNCTION IF EXISTS getParentList;
CREATE FUNCTION `getParentList` (pkFolder VARCHAR(100)) RETURNS VARCHAR (1000)
BEGIN
DECLARE
    fid VARCHAR (100) DEFAULT '';
DECLARE
    str VARCHAR (2000) DEFAULT pkFolder;
WHILE pkFolder IS NOT NULL DO
SET fid = (
    SELECT
        pk_parent_folder
    FROM
        intercl_folder
    WHERE
        pk_folder = pkFolder
);
IF fid IS NOT NULL THEN
SET str = concat(str, ',', fid);
SET pkFolder = fid;
ELSE
SET pkFolder = fid;
END IF;
END WHILE;
RETUR

猜你喜欢

转载自blog.csdn.net/zhuwei_clark/article/details/74731111
今日推荐