含义:一组预先编译好的sql语句的集合,理解成批处理语句,减少了编译次数和与数据库服务器的连接次数,提高了效率。
与存储过程类似,
区别:
存储过程:可以有0个返回也可以有多个返回,适合做批量输入,批量更新
函数:有且只有一个返回,适合做处理数据后返回一个结果
语法:
###创建
create function 函数名(函数列表) returns 返回类型
begin
函数体
end
注意:
1、参数列表包含两部分:参数名 参数类型
2、函数体:肯定会有return语句,如果没有会报错
如果return语句没有放在函数体的最后也不报错,但不建议
retuen 值;
3、函数体中只有一句话,可以省略begin end
4、使用delimiter语句设置结尾标记
###调用
select 函数名(参数列表)
查看和删除
###查看
show create function 函数名;
###删除
drop function 函数名;