DROP FUNCTION IF EXISTS queryChildrenDepartment;
delimiter //
CREATE FUNCTION queryChildrenDepartment(departmentId longtext)
RETURNS VARCHAR(4000)
BEGIN
DECLARE sTemp VARCHAR(4000);
DECLARE sTempChd VARCHAR(4000);
SET sTemp='$';
SET sTempChd = CAST(departmentId AS CHAR);
WHILE sTempChd IS NOT NULL DO
SET sTemp= CONCAT(sTemp,',',sTempChd);
SELECT GROUP_CONCAT(department_id) INTO sTempChd FROM crm_department WHERE FIND_IN_SET(parent_id,sTempChd) > 0;
END WHILE;
RETURN sTemp;
END;
//
delimiter ;