MySQL中的函数、参数和作用域

函数

函数:将一段代码块封装到一个结构中,在需要执行代码块的时候,直接调用代码块即可,也就是实现代码复用。

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

系统函数

系统定义好的函数,直接调用即可。
任何函数都是有返回值的,因此函数的调用都是通过select调用。
MySQL中,字符串的基本操作单位是字符(最常见的是字符)。

MySQL中的函数、参数和作用域_第1张图片
char_length和length:查看字符串的字符串长度和字节长度
MySQL中的函数、参数和作用域_第2张图片

不难看出,字节长度和字符串长度是不同的。

Instr:判断字符串是否在某个具体的字符串中存在,存在的话返回具体的位置 ,不存在 返回0
MySQL中的函数、参数和作用域_第3张图片

Lpad:将字符串按照某个指定的填充方式,填充到指定的字符串中。
MySQL中的函数、参数和作用域_第4张图片

insert:替换,找到目标位置指定长度的字符串,替换成目标字符串。
MySQL中的函数、参数和作用域_第5张图片

strcmp:字符串比较

注意:不区分大小写
MySQL中的函数、参数和作用域_第6张图片

自定义函数

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

创建函数

create function 函数名(参数列表) returns 数据类型 --规定要返回的数据
begin
函数体
返回值
end

函数的创建和调用:
MySQL中的函数、参数和作用域_第7张图片

查看函数:
在这里插入图片描述

注意函数是指定数据库的,如果切换数据库则不能调用。
查看函数的创建:
在这里插入图片描述

函数参数

参数分为两种,定义时的参数叫做形参,调用时的参数叫实参,调用时的参数叫实参(实参可以是数值也可以是变量)
形参:要求必须指定数据类型
function 函数名(形参名字 字段类型)returns 数据类型

MySQL中的函数、参数和作用域_第8张图片

注意在函数的外面也是可以查看@修饰的变量的值的。

函数的作用域MySQL中的函数、参数和作用域_第9张图片

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

全局变量:使用set关键字定义的,使用@符号修饰的变量。
局部变量:使用declare关键字声明,没有@符号,所有的局部变量的声明必须在函数体开始之前。

你可能感兴趣的:(Mysql)