(4) 创建函数
各个数据库包括各种开发工具都为用户提供了创建函数的功能,这里关于函数的语法我们不再做更多解释了,给出一个例子:
mysql> delimiter //
mysql> CREATE FUNCTION fn_test (n DECIMAL(3,0))
-> RETURNS DECIMAL(20,0)
-> DETERMINISTIC
-> BEGIN
-> DECLARE v_tmp DECIMAL(20,0) DEFAULT 1;
-> DECLARE counter DECIMAL(3,0);
-> SET counter = n;
-> factorial_loop: REPEAT
-> SET v_tmp = v_tmp * counter;
-> SET counter = counter - 1;
-> UNTIL counter = 1
-> END REPEAT;
-> RETURN v_tmp;
-> END
-> //
Query OK, 0 rows affected (0.23 sec)
![]()
mysql> delimiter ;
mysql> select fn_test(10);
+-------------+
| fn_test(10) |
+-------------+
| 3628800 |
+-------------+
1 row in set (0.20 sec)
![]()
mysql> select fn_test(3);
+------------+
| fn_test(3) |
+------------+
| 6 |
+------------+
1 row in set (0.00 sec)
显示一个定义好的函数的内容:
mysql> show create function fn_test;
