msql 自定义函数(UDF)
创建UDF:
CREATE [AGGREGATE] FUNCTION function_name(parameter_name type,[parameter_name type,…])
RETURNS {STRING|INTEGER|REAL}
runtime_body
简单来说就是:
CREATE FUNCTION 函数名称(参数列表)
RETURNS 返回值类型
函数体
删除UDF:
DROP FUNCTION function_name
调用自定义函数语法:
SELECT function_name(parameter_value,…)
如果我想实现一个的函数,并且经常使用,就可以定义自定义函数(方便重复调用)。
先简单的创建一个不带参数的自定义函数:
CREATE FUNCTION wenbin() RETURNS VARCHAR(30) RETURN DATE_FORMAT(NOW(),‘Y%年%m月%d日 %H时%i分%s秒’);
调用自己创建的自定义函数:
创建带参数的自定义函数:
CREATE FUNCTION liang (num1 SMALLINT UNSIGNED,num2 SMALLINT UNSIGNED)
RETURNS FLOAT (10, 2) RETURN (num1 + num2) / 2;
调用带参数的自定义函数:
如果输入负值则会报错:函数体如果为复合结构 需要使用 BETWEEN ...... END
CREATE FUNCTION addUser(username VARCHAR(20)) RETURNS INT UNSIGNED BEGIN INSERT test(username) VALUES(username); RETURN LAST_INSERT_ID(); END;
删除函数
DROP FUNCTION + 方法名称