CREATE DEFINER=`root`@`localhost` FUNCTION `getParentNodeList`(`nodeId` BIGINT) RETURNS varchar(1000) CHARSET utf8
BEGIN
DECLARE parentList VARCHAR(1000); # 返回父节点结果集
DECLARE tempParentId VARCHAR(1000); # 临时存放父节点
DECLARE nodeName VARCHAR(1000); # 临时存放父节点名称
SET parentList = '';
SET tempParentId = CAST(nodeId as CHAR); # 将int类型转换为String
SET nodeName = ''; # 将int类型转换为String
lable1:loop # 循环,用于查询节点上所有的父节点
SELECT parent_id,`name` INTO tempParentId, nodeName FROM engineering_equipment_cls where id = tempParentId; # 查询节点上所有父节点
SET parentList = CONCAT(nodeName, ',', parentList); # 存入到返回结果中
if tempParentId=0 THEN
LEAVE lable1;
END IF;
END loop lable1;
RETURN SUBSTRING(parentList, 1, CHAR_LENGTH(parentList)-1); # 将返回结果处理,截取掉结果集前面的逗号
END
mysql 拼接父节点路径
最新推荐文章于 2024-05-03 18:15:47 发布