( 18 )MySQL中的函数

Posted

tags:

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

MySQL中的函数


 

函数

函数 : 将一段代码封装到一个结构中,在需要执行代码块的时候,调用结构执行即可(代码复用)

函数分为两类: 系统函数和自定义函数

系统函数

系统函数: 系统定义好的函数,直接调用即可.

任何含糊都有返回值,一次函数的调用是通过select调用,mysql的基本操作单位是---字符串.

系统函数:

subString : 截取字符串 SUBSTRING(str,pos,len) 角标从1开始.(字符为单位)

char_length : 字符长度

Length : 字节长度

InStr : 判断字符串是否存在于具体的字符串中,存在返回位置.不存在返回 0.

Lpad : 左填充,将字符串按照某个指定的填充方式,填充到指定的长度(字符单位)

Insert : 替换,找到目标位置指定长度的字符串,替换成目标字符串

strCmp :字符串比较.(-1 , 0 , 1 )

自定义函数

函数要素 : 函数名,参数列表,返回值,函数体(作用域).

创建函数

创建语法

------------------------------------------------------------

create function 函数名 ([形参列表]) returns 数据类型 --return规定要返回的数据类型

begin

--函数体

--返回值 return 类型(指定的数据类型)

end;

------------------------------------------------------------

创建函数

create function display() returns int

return 100;

调用函数

select display();

查看函数

查看所有函数: show function status [likes ‘pattern‘] ;

查看数据库的创建语句: select create function 函数名 ;

修改函数&&删除函数

函数只能修改后新增不能被修改.

基本语法 : drop function 函数名.

函数参数

参数分为两种 :定义时的参数叫形参,调用的参数叫实参(实参可以是数值也可以的变量)

形参 : 要求必须指定数据类型

Function 函数名 (形参名字 , 字段类型 ) returns 数据类型

需求 : 1到X的和

delimiter $$

create function diaplay1(int_1 int) returns int

begin

set @i = 1;

set @res= 0;

while @i < int_1 do

set @res= @res+ @i ;

set @i = @i + 1;

end while ;

return @res;

end

$$

delimiter ;

技术分享

作用域

MySql中,全局变量可以使用到任何地方,局部变量只能在函数内部使用

全局变量:

使用set关键字定义,使用@符号标志

局部变量:

使用declare 关键字声明 ,没有@符号,所有的局部变量的声明,必须在函数体开始之前.

 技术分享

 

 

以上是关于( 18 )MySQL中的函数的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL 存储函数中的 SELECT 查询

MySQL 函数 ONLY_NUMBERS

MySQL学习18:运算符与函数之数值运算符和函数比较运算符和函数日期时 间函数

mysql-18-function

身份证处理函数Mysql篇含获取性别年龄15位身份证升级到18位

好吧,我有一个关于 MySql 中的递归的问题,关于创建递归阶乘函数。它给了我错误1424: