//mysql自定义函数,新建查询修改表名和相关字段后直接运行创建函数
DROP FUNCTION IF EXISTS queryChildrenAreaInfo;
RETURNS VARCHAR (4000)
BEGIN
DECLARE sTemp VARCHAR (4000);
DECLARE sTempChd VARCHAR (4000);
SET sTemp ='$';
SET sTempChd = cast(areaId AS CHAR);
WHILE sTempChd IS NOT NULL DO
SET sTemp = CONCAT(sTemp, ',', sTempChd);
SELECT group_concat(id) INTO sTempChd FROM 表名 WHERE FIND_IN_SET( pid, sTempChd) > 0;//指定查询
END WHILE;
RETURN sTemp;
END;
调用的时候:select * from 表名 t where FIND_IN_SET(id,queryChildrenAreaInfo(要查询的id));