首页 > 代码库 > mysql流程控制、自定义函数、存储过程

mysql流程控制、自定义函数、存储过程

修改结束符dilimiter $$

分支

  if 条件 then 语句

  else if 条件 then 语句

  else 语句

  end if;

循环

  while 条件 do

  循环体

  end while;

用户自定义变量

  典型的变量:字段名就是变量,还有一些系统内置的变量

  用户自定义变量需要使用 @作为变量名的前缀,用于区分是否是系统内置变量!

  set 变量名=变量值!  //赋值set @height=10;

  取值  //select @height;

系统内置函数

 

rand(),生成随机数的函数,得到0-1之间的随机数

 

floor()向下取整:

 

substring(字符串,位置,长度),截取字符串函数(以1开始为下标)

concat(‘‘,‘‘);连接两个字符串

 

char_length()字符数量

 

length()字节长度

convert(字符串 using 字符集) 字符转换到相应的目标字符集上

 

自定义函数,基于库(调用:sumN(5)) 函数内声明局部变量declare

delimiter $$create function sumN (n int) returns intbegin	-- 定义局部循环变量	declare i int default 1;	declare sum int default 0;	while i<=n do -- 判断循环变量		-- 累加求和 sum = sum + i;		set sum = sum+i;		-- 循环变量变化		set i = i + 1;	end while;	-- fanhui sum	return sum;end$$delimiter ;