MySQL 自定义函数

来源:互联网 发布:淘宝小二介入订单关闭 编辑:程序博客网 时间:2024/06/08 16:06

转载自:http://blog.csdn.net/yuan13826915718/article/details/52315569

内置函数

按功能划分,有:

  • 字符函数
  • 数值函数
  • 日期时间函数
  • 加密函数

自定义函数

用户自定义函数(user-defined function,UDF)是一种对MySQL扩展的途径,其用法与内置函数相同。

  • 自定义函数的两个必要条件:
    (1)参数:可以有零个或多个
    (2)返回值:只能有一个返回值

  • 函数可以返回任意类型的值,同样可以接收这些类型的参数

  • 关于函数体(routine_body):
    (1)函数体由合法的SQL语句构成
    (2)函数体可以是简单的SELECT或INSERT语句
    (3)函数体如果为复合结构则需要使用BEGIN…END语句来包含
    (4)复合结构可以包含声明,循环,控制结构

  • 创建自定义函数:

CREATE FUNCTION function_nameRETURNS{STRING|INTEGER|REAL|DECIMAL}routine_body

创建不带参数的自定义函数

  • 求出当前的时间并且按照自定义格式返回

这里写图片描述

创建带有参数的自定义函数

  • 求两个数的平均值

这里写图片描述

创建具有复合结构函数体的自定义函数

  • 自定义一个函数用于向test数据表中插入数据,并返回最后一次插入的位置。

这里写图片描述

“DELIMITER //”语句的作用是修改当前MySQL中结束字符为“//”

删除函数

DROP FUNCTION [IF EXISTS] function_name;
0 0