Welcome

首页 / 数据库 / MySQL / MySQL 自定义函数CREATE FUNCTION示例

mysql>mysql> delimiter $$mysql>mysql> CREATE FUNCTION myFunction-> (in_string VARCHAR(255),-> in_find_str VARCHAR(20),-> in_repl_str VARCHAR(20))->-> RETURNS VARCHAR(255)-> BEGIN-> DECLARE l_new_string VARCHAR(255);-> DECLARE l_find_pos INT;->-> SET l_find_pos=INSTR(in_string,in_find_str);->-> IF (l_find_pos>0) THEN-> SET l_new_string=INSERT(in_string,l_find_pos,LENGTH(in_find_str),in_repl_str);-> ELSE-> SET l_new_string=in_string;-> END IF;-> RETURN(l_new_string);->-> END$$Query OK, 0 rows affected (0.00 sec)mysql>mysql> delimiter ;mysql> select myFunction("ABC","A","Z");+---------------------------+| myFunction("ABC","A","Z") |+---------------------------+| ZBC |+---------------------------+1 row in set (0.00 sec)mysql> drop function myFunction;Query OK, 0 rows affected (0.00 sec)