mysql set stemp = $_MySql 利用函数查询 所有子节点id

本文介绍了一个用于MySQL的自定义函数queryChildrenAreaInfo,该函数可以递归地查询所有子节点的ID,并通过逗号分隔返回这些ID。文章提出了两个问题:1. 初始化变量sTemp为'$'的作用是什么?2. while循环是如何结束的?

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

想要在mysql中查询所有子节点的id,百度后查到了这个函数

DROP FUNCTION IF EXISTS queryChildrenAreaInfo;

CREATE FUNCTION `queryChildrenAreaInfo` (areaId INT)

RETURNS VARCHAR(4000)

BEGIN

DECLARE sTemp VARCHAR(4000);

DECLARE sTempChd VARCHAR(4000);

SET sTemp = '$';

SET sTempChd = cast(areaId as char);

WHILE sTempChd is not NULL DO

SET sTemp = CONCAT(sTemp,',',sTempChd);

SELECT group_concat(id) INTO sTempChd FROM t_areainfo where FIND_IN_SET(parentId,sTempChd)>0;

END WHILE;

return sTemp;

END;

对此,有两个疑问:1.初始化sTemp='$',这个有什么作用。

2.while循环是怎样结束的

请大家帮忙 解答下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值