mysql 使用存储过程实现树节点的获取方法
如图:
表数据
这样的一棵树,如何获取“高寅瑞”下的所有节点(一条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));
总结
相关推荐
minggehenhao 2020-07-28
hungzz 2020-06-16
ncomoon 2020-06-14
xiaobaif 2020-06-13
hanshangzhi 2020-06-12
84251449 2020-05-17
cyyking 2020-05-17
jiony 2020-05-11
herohope 2020-05-03
dayi 2020-04-11
Accpcjg 2020-03-05
勇往直前 2020-03-04
要啥自行车一把梭 2020-01-19
Omega 2020-08-16
zjyzz 2020-08-16
zhaojp0 2020-06-27
zjuwangleicn 2020-06-25
wenjieyatou 2020-06-17
liaomingwu 2020-06-16