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 <= 100 do
-- 3. 判断 i 是否是偶数
if i % 2 = 0 then
-- 4. 拼接偶数
set res = concat(res,' ',i);
end if;
-- 递增 i
set i = i + 1;
end while;
-- 5. 返回 res
return res;
end
//
delimiter ;

当前标题:MySQL--函数
路径分享:http://ybzwz.com/article/pegcjj.html