MySQL自定义函数

本文介绍了如何在数据库中创建自定义函数(UDF),包括无参函数、带参函数及具有复合结构函数体的自定义函数。文章通过实例展示了不同类型的自定义函数的创建方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

UDF(user-dinfine function,UDF)自定义函数
自定义函数的两个必要条件:
(1)参数
(2)返回值
创建自定义函数:
CREATE FUNCTION function_name
RETURNS
{STRING|INTEGER|REAL|DECIMAL}
routine_body
函数体:
(1)函数体由合法的SQL语句构成
(2)函数体可以是简单的SELECT或INSERT语句
(3)函数体如果为复合结构则使用BEGIN...END语句
(4)复合结构可以包含声明,循环,控制结构

不带参数的自定义函数
 CREATE FUNCTION fun1() RETURNS VARCHAR(30)
    -> RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H:%i:%s');
mysql> SELECT fun1();
+-------------------------+
| fun1()                  |
+-------------------------+
| 2016年05月01日 14:42:32 |
+-------------------------+

参数的自定义函数
CREATE FUNCTION fun(num1 SMALLINT,num2 SMALLINT)
    -> RETURNS FLOAT(10,2)
    -> RETURN (num1+num2)/2;

复合结构函数体的自定义函数
 CREATE FUNCTION adduser(username VARCHAR(20))
    -> RETURNS INT UNSIGNED
    -> BEGIN
    -> INSERT test(username) VALUES(username);
    -> RETURN LAST_INSERT_ID();
    -> END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值