MySQL 自定义函数 (Function) 示例

发布于 2022-09-30 11:50:33 字数 1982 浏览 17 评论 0

  1. mysql>
  2. mysql> delimiter $$
  3. mysql>
  4. mysql> CREATE FUNCTION myFunction
  5.     ->    (in_string      VARCHAR(255),
  6.     ->     in_find_str    VARCHAR(20),
  7.     ->     in_repl_str    VARCHAR(20))
  8.     ->
  9.     ->   RETURNS VARCHAR(255)
  10.     -> BEGIN
  11.     ->   DECLARE l_new_string VARCHAR(255);
  12.     ->   DECLARE l_find_pos   INT;
  13.     ->
  14.     ->   SET l_find_pos=INSTR(in_string,in_find_str);
  15.     ->
  16.     ->   IF (l_find_pos>0) THEN
  17.     ->     SET l_new_string=INSERT(in_string,l_find_pos,LENGTH(in_find_str),in_repl_str);
  18.     ->   ELSE
  19.     ->     SET l_new_string=in_string;
  20.     ->   END IF;
  21.     ->   RETURN(l_new_string);
  22.     ->
  23.     -> END$$
  24. Query OK, 0 rows affected (0.00 sec)
  25. mysql>
  26. mysql> delimiter ;
  27. mysql> select myFunction('ABC','A','Z');
  28. +---------------------------+
  29. | myFunction('ABC','A','Z') |
  30. +---------------------------+
  31. | ZBC                       |
  32. +---------------------------+
  33. 1 row in set (0.00 sec)
  34. mysql> drop function myFunction;
  35. Query OK, 0 rows affected (0.00 sec)
  36. mysql>
  37. mysql>

复制代码

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文