查询MySql是否可以创建函数
show variables like '%func%';
不可执行则执行本条SQL
set global log_bin_trust_function_creators=1;
创建
-- 在navcat中的查询下执行以下命令
drop function if exists getChildId_bas_basic_tree;
DELIMITER //
create function getChildId_bas_basic_tree(tag_id INT)
returns varchar (4000)
BEGIN
DECLARE sTemp VARCHAR(4000);
DECLARE sTempChd VARCHAR(4000); -- 节点ID(临时变量)
SET sTemp = '$';
SET sTempChd =cast(tag_id AS CHAR); -- 把areaId强制转换为字符。
WHILE sTempChd is not null DO
SET sTemp = concat(sTemp, ',', sTempChd); -- 把所有节点连接成字符串。
SELECT group_concat(id) INTO sTempChd FROM tag_item_info
WHERE FIND_IN_SET(parent_id, sTempChd)>0;
END WHILE;
RETURN sTemp;
END //
DELIMITER ;
调用
SELECT getChildId_bas_basic_tree(1);