一、 简介
1 定义:一组预先编译好的sql语句的集合,理解成批处理语句。
2 好处:提高代码的重用性,简化操作,减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率。
3 与存储过程区别:
存储过程:可以有0个返回,也可以多个返回,适合做批量插入、批量更新
函数:只能有一个返回,适合做处理数据后返回一个结果

二、语法
1 创建
Create function 函数名(参数列表) returns 返回类型
Begin
函数体
End
注意:
参数列表包含两部分:参数名 参数类型

函数体:肯定会有return语句,没有会报错
建议放在最后

只有一句话可以省略beginend

2 调用:select 函数名(参数列表)

3 查看函数:show create function myf1;

4 删除函数:drop function myf1;