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));
總結
到此這篇關于mysql 使用存儲過程實現樹節點的獲取的文章就介紹到這了,更多相關mysql 存儲過程樹節點獲取內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
