MySQL自定义函数用法详解
自定义函数 (user-defined function UDF)就是用一个象ABS() 或 CONCAT()这样的固有(内建)函数一样作用的新函数去扩展MySQL。
所以UDF是对MySQL功能的一个扩展
创建和删除自定义函数语法:
创建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,...)
//自定义函数(0显示为女1显示为男)
DELIMITER $$
CREATE
/*[DEFINER = { user | CURRENT_USER }]*/
FUNCTION `t204`.`fun_person`(sex1 INT)
RETURNS VARCHAR(50)
/*LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
| COMMENT 'string'*/
BEGIN
DECLARE psex VARCHAR(50)DEFAULT'';
IF sex1=1
THEN
SET psex:='男';
ELSEIF sex1=0
THEN
SET psex:='女';
END IF;
RETURN psex;
END$$
DELIMITER ;
//调用方法
SELECT fun_person(1);
男