alibabamama 发表于 2018-10-7 14:21:42

MySQL--函数

- 创建  
-- SQL的函数必须有返回值
  
-- create function 函数名称(参数列表) returns 返回类型
  
create function f1() returns int
  
return 10;
  
- 查看
  
-- 查看 mysql.proc
  
   select db,name,type from mysql.proc;
  
- 调用
  
-- 调用 select f1();
  
- 删除
  
-- 删除函数
  
drop function f1;
  
delete from mysql.proc where name = 'xx';
  
- 变量
  
-- 临时修改
  
delimiter //
  
create function f1(a int,b int) returns int
  
begin
  
-- 定义一个变量 res
  
declare res int default 0;
  
-- 将 a + b的结果赋值给 res
  
set res = a + b;
  
-- 返回 res
  
return res;
  
end
  
//
  
delimiter ;
  
-- 用户变量的注意点
  
-- 在 sql 语句中给用户变量赋值的时候 不能够使用 '='
  
select count(*) from mm_users;
  
select @count = count(*) from mm_users;-- '=' 表示判断是否相等
  
- 判断
  
判断
  
if 条件1 then
  
语句1;
  
elseif 条件2 then
  
语句2;
  
else
  
语句
  
end if;
  
- 循环
  
循环
  
while 条件 do
  
语句;
  
end while;
  
退出循环:leave,相当于break
  
退出本次循环:iterate,相当于continue
  
- 示例
  
delimiter //
  
create function f3() returns varchar(300)
  
begin
  
-- 1. 声明递增的值 i, 拼接结果的 res
  
declare i int default 0;
  
declare res varchar(300) default '';
  
-- 2. 通过 while 递增 i
  
while i
页: [1]
查看完整版本: MySQL--函数