- CREATE FUNCTION `getTreeCategory`(rootId INT) RETURNS VARCHAR(1000) CHARSET utf8
- 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);/*将以前类别与现在查询类别进行合并*/
- /*将每次查到的子id形成一个字符组,放到sTempChd里,如果sTempChd为null就停止循环*/
- SELECT GROUP_CONCAT(catid) INTO sTempChd FROM tblName WHERE FIND_IN_SET(parentid,sTempChd)>0;
- END WHILE;
- SET sTemp = SUBSTRING(sTemp,2,CHAR_LENGTH(sTemp));
- RETURN sTemp;
- END
mysql 递归获取子类
最新推荐文章于 2024-03-07 17:23:13 发布