想實現一個輸入多個類別 可以分別查出子類的函數 getCatalogParentLst()方法是獲取一個類別的子類的方法 BEGIN DECLARE THE_CNT INT(15) DEFAULT 1; /*保存,位置*/ DECLARE sTempID VARCHAR(1000);/*存儲拆分的ID*/ DECLARE resultTemp VARCHAR(15000);/*存儲拆分的ID*/ DECLARE result VARCHAR(15000) DEFAULT NULL; /*保存返回結果*/ SET THE_CNT = LOCATE(',',NodeIdStr); SET result='$'; WHILE (THE_CNT >= 0) do IF THE_CNT = 0 THEN SET resultTemp = getCatalogParentLst(NodeIdStr); SET result =CONCAT(result,',',resultTemp); ELSE SET sTempID = SUBSTRING_INDEX(SUBSTRING_INDEX(NodeIdStr, ',', 1), ',', -1); SET resultTemp = getCatalogParentLst(sTempID); SET result = CONCAT(result,',',resultTemp); end IF ; SET NodeIdStr =RIGHT(NodeIdStr ,LENGTH(NodeIdStr) - THE_CNT); SET THE_CNT = LOCATE(',',NodeIdStr); END WHILE; RETURN result; END
2 回答

慕田峪7331174
TA貢獻1828條經驗 獲得超13個贊
如果你的NodeIdStr以,號開始, THE_CNT=0,
SET NodeIdStr =RIGHT(NodeIdStr ,LENGTH(NodeIdStr) - THE_CNT);
NodeIdStr一直不變,就死循環了
添加回答
舉報
0/150
提交
取消