mysql数据库自定义函数
函数可以返回任意类型的值,同样可以接收这些类型的参数。函数参数和返回值之前没有必然的联系
[注意]一个函数最多可以有1024个参数
用户自定义函数(user-defined function,UDF)是一种对MySQL扩展的途径,其用法与内置函数相同
自定义函数的两个必要条件:1、参数;2、返回值
创建自定义函数
CREATE FUNCTION function_name
RETURNS
{STRING|INTEGER|REAL|DECIMAL}
routine_body
关于自定义函数的函数体
1、函数体可以由合法的SQL语句构成;
2、函数体可以是简单的SELECT或INSERT语句;
3、函数体如果为复合结构则使用BEGIN...END语句;
4、复合结构可以包含声明、循环、控制结构。
创建不带参数的自定义函数
CREATE FUNCTION f1() RETURNS VARCHAR(30)
RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H点:%i分:%s秒');
创建带参数的自定义函数
CREATE FUNCTION f2(num1 SMALLINT UNSIGNED,num2 SMALLINT UNSIGNED) RETURNS FLOAT(10,2) UNSIGNED RETURN (num1+num2)/2;
[注意]如果自定义函数存在符合结构的多个语句,函数体要包含在BEGIN...END内,同时,需要通过DELIMITER将默认的结束符 ; 修改成其他符号,如:// $$ ,以免函数由于语句结尾的 ; 号导致中断
删除函数
DROP FUNCTION [IF EXISTS] function_name
原文链接:https://www.qiquanji.com/post/8438.html
本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。