
表如上:
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 t_files where FIND_IN_SET(parent_id,sTempChd)>0;
  END WHILE;
  RETURN sTemp;
END  //
DELIMITER ;
调动语句:
select *from t_files where find_in_set(id, getChildLst(1));










