ホームページ >データベース >mysql チュートリアル >MySQL 自定义函数CREATE FUNCTION示例

MySQL 自定义函数CREATE FUNCTION示例

WBOY
WBOYオリジナル
2016-06-07 16:28:56998ブラウズ

mysqlmysql delimiter $$mysqlmysql 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_f

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)

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。