函数

sqL中的语句也分为内置函数和自定义函数

内置函数:

char_length(参数)   计算字符串的长度
concat(参数1,参数2...)   字符串拼接
concat_ws(符号,参数1,参数2)   以指定的符号来拼接字符串
insert(str,pos,len,nevatr)   在str的指定位置插入字符串
pos开始替换的位置  len替换的长度 nevatr替换的字符
instr(str,substr)  返回字符串中子字符串的第一个出现的位置
left(str,len)   返回字符串的前几个字符
right(str,len)  返回字符串的后几个字符
substring(str,len1,len2) 从字符串的len1位置取出长度为len2的字符
lower(str)  变小写
ouper(str)  变大写
trim(str)  字符串开头和结尾的空格移除
trim(leading 字符 from 字符串)   移除字符串左边的指定字符
trim(both 字符 from 字符串)   移除字符串开头和结尾的指定字符
trim(trailing 字符 from 字符串)   移除字符串右边的指定字符
ltrim(str)  字符串开头的空格移除
rstrm(str)  字符串结尾的空格移除
locate(str,substr,num)  在str中,从num位置开始找substr,返回子字符串的索引

自定义函数:

定义函数的步骤

delinter //
create function f1(
 定义参数)
returns int    (设置函数的返回值类型)
begin
#函数中不允许获取结果集,即sql语句(如select * from tb;),只能在存储过程获取结果集
参数
函数语句
return num   (设置函数的返回内容)
end //
delinter ;

函数支持sql语句类型的赋值方式

select nid into a from student where name='alex'   将结果赋值给a

如下是一段定义函数的代码:

 delinter //
    create function f1(
     li int,
     l2 intreturns int
    begin
    declare num int;
    set num=li+l2
    return num
    end //
delinter ;

如上是一段加法函数,调用该函数select f1(1,2)

posted @ 2020-11-11 22:20  maday  阅读(60)  评论(0)    收藏  举报