MYSQL的自定义函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQL的自定义函数相关的知识,希望对你有一定的参考价值。

自定义函数

用户自定义函数是一种对mysql扩展的途径,其用法与内置函数相同

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

函数体由合法的SQL语句构成

函数体可以是简单的SELECT或INSERT语句

函数体如果为复合结构则使用BEGIN...END语句

复合结构可以包含声明,循环,复制结构

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

第一步CREATE  FUNCTION  函数名 ()  FETURNS  字符串长度如VARCHAR(30)

第二步RETURN  类型(如DATE)_FORMAT  (NOW(),函数内容如’%Y%m%d %H点:%i分:%s’);

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

第一步CREATE  FUNCTION   函数名如f1(参数类型和参数个数如num1  字符长度如SMALLINT  字符类型如UNSIGNED,  参数类型和参数个数如num2  字符长度如SMALLINT   字符类型如UNSIGNED)

第二步RETUPNS 返回值类型如 FLOAT(10,2)  UNSIGNED

第三步RETUPNS 返回值如(num1+num2)/2;

调用函数

SELECT 函数名 (参数名如10,15);

修改当前MYSQL的默认定界符

DELIMITER  新的定界符

创建具有复合结构函数体的自定义函数(创建前要先修改MYSQL的默认定界符为//,创建好后要修改回;)

第一步CREATE  FUNCTION adduser(用户名如username  字符长度如VARCHAR(20)

第二步RETURNS 数据类型如INT 字符类型如UNSIGNED

第三步BEGIN

第四步INSERT 表名(用户名)VALUES(用户名);

第五步RETURNLAST_INSERT_ID();

第六步END

第七步 //

以上是关于MYSQL的自定义函数的主要内容,如果未能解决你的问题,请参考以下文章

nodejs中的自定义mysql函数返回未定义

在mySQL中,如何定义一行属性的自定义函数?

PHP对Mysql操作的自定义函数

mysql相邻行数据计算的自定义变量@和Lead窗口函数的具体案例适应版本mysq5.7 mysql8.0

MySQL Split 函数

大数据笔记(十八)——Pig的自定义函数