自定义函数
用户自定义函数(user-defined function,UDF)是一种对MySQL扩展的途径,其用法与内置函数相同。
语句结构
CREATE FUNCTION function_name
RETURNS
{STRING|INTEGER|REAL|DECIMAL}
routine_body
函数体(routine_body)
- 由合法的SQL语句构成
- 可以是简单的SELECT或INSERT语句
- 复合结构则使用BEGIN...END语句
- 复合结构可以包含声明,循环,控制结构
特性
- 参数
- 返回值
- 参数,返回值类型可以任意
创建函数
//简单无参函数
CREATE FUNCTION f1() RETURNS VARCHAR(30)
RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H点:%i分:%s秒');
//调用无参函数
SELECT f1();
//带参数函数
CREATE FUNCTION f2(num1 SMALLINT UNSIGNED,num2 SMALLINT UNSIGNED)
RETURNS FLOAT(10,2) UNSIGNED
RETURN (num1+num2)/2;