想實(shí)現(xiàn)一個(gè)輸入多個(gè)類(lèi)別 可以分別查出子類(lèi)的函數(shù) getCatalogParentLst()方法是獲取一個(gè)類(lèi)別的子類(lèi)的方法 BEGIN DECLARE THE_CNT INT(15) DEFAULT 1; /*保存,位置*/ DECLARE sTempID VARCHAR(1000);/*存儲(chǔ)拆分的ID*/ DECLARE resultTemp VARCHAR(15000);/*存儲(chǔ)拆分的ID*/ DECLARE result VARCHAR(15000) DEFAULT NULL; /*保存返回結(jié)果*/ 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貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超13個(gè)贊
如果你的NodeIdStr以,號(hào)開(kāi)始, THE_CNT=0,
SET NodeIdStr =RIGHT(NodeIdStr ,LENGTH(NodeIdStr) - THE_CNT);
NodeIdStr一直不變,就死循環(huán)了

MMTTMM
TA貢獻(xiàn)1869條經(jīng)驗(yàn) 獲得超4個(gè)贊
SET NodeIdStr =RIGHT(NodeIdStr ,LENGTH(NodeIdStr) - THE_CNT-1);
添加回答
舉報(bào)
0/150
提交
取消