mysql 使用存储过程实现树节点的获取方法
16lz
2021-12-18
如图:
表数据
这样的一棵树,如何获取“高寅瑞”下的所有节点(一条sql语句是肯定搞不定的)
通过存储过程来写
DELIMITER //CREATE FUNCTION `getChildLst`(rootId INT) RETURNS varchar(1000) READS SQL DATA 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 document_file_name where FIND_IN_SET(pId,sTempChd)>0; END WHILE; RETURN sTemp; END //
select * from document_file_name where find_in_set(id, getChildLst(1));
更多相关文章
- Android(安卓)开机自启动程序
- android使用pull解析器来解析和生成xml文件
- android与.NET webservice
- Android中获取应用程序(包)的信息-----PackageManager的使用(一)
- Android中获取应用程序(包)的信息-----PackageManager的使用(一)
- Android(安卓)TimeLine 时间节点轴的实现
- android unity 文件读写_unity Android(安卓)打包后读取 xml 文
- Android(安卓)(shape,gradient)使用总结
- Android通过shape.xml制作渐变背景