mysql 使用存儲(chǔ)過(guò)程實(shí)現(xiàn)樹(shù)節(jié)點(diǎn)的獲取方法
如圖:

表數(shù)據(jù)

這樣的一棵樹(shù),如何獲取“高寅瑞”下的所有節(jié)點(diǎn)(一條sql語(yǔ)句是肯定搞不定的)
通過(guò)存儲(chǔ)過(guò)程來(lái)寫
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 //
創(chuàng)建如上存儲(chǔ)過(guò)程
select * from document_file_name where find_in_set(id, getChildLst(1));

總結(jié)
到此這篇關(guān)于mysql 使用存儲(chǔ)過(guò)程實(shí)現(xiàn)樹(shù)節(jié)點(diǎn)的獲取的文章就介紹到這了,更多相關(guān)mysql 存儲(chǔ)過(guò)程樹(shù)節(jié)點(diǎn)獲取內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. MySQL分區(qū)的優(yōu)點(diǎn)2. mysql的like模式3. 從舊版本SQL Server中重新存儲(chǔ)數(shù)據(jù)4. MYSQL(電話號(hào)碼,身份證)數(shù)據(jù)脫敏的實(shí)現(xiàn)5. 加密你的Access數(shù)據(jù)庫(kù)asp打開(kāi)方法6. mysql-bin.000001文件的來(lái)源及處理方法7. Oracle根據(jù)逗號(hào)拆分字段內(nèi)容轉(zhuǎn)成多行的函數(shù)說(shuō)明8. 什么是Access數(shù)據(jù)庫(kù)9. 如何實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)的備份與恢復(fù)10. mysql 視圖操作和存儲(chǔ)過(guò)程

網(wǎng)公網(wǎng)安備