UDF是mysql的一个拓展接口,用来自定义mysql函数,是一种拓展Mysql的技术手段
语法:
create function 函数名(【参数列表】) returns 数据类型
begin
sql语句
return 值
end;
例题
100以内求和
DELIMITER //
CREATE FUNCTION testFail() RETURNS VARCHAR(10)
BEGIN
DECLARE num,`sum` INT(11) DEFAULT 0;
WHILE num<=100 DO
SET `sum`=`sum`+num;
SET num=num+1;
END WHILE;
RETURN `sum`;
END//
DELIMITER ;
可以用select 来返回结果
SELECT testFail()
UDF的特性
- 函数能返回字符串,整数或实数。
- 可以定义一次作用于一行的简单函数,或作用于多行的组的集合函数。
- 提供给函数的信息使得函数可以检查传递给它们的参量的数目和类型。
- 可以让MySQL在将某参量传递给函数之前强制其为某一类型。
- 可以表示函数返回NULL 或发生错误。