千家信息网

MySQL--函数

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,- 创建-- SQL的函数必须有返回值-- create function 函数名称(参数列表) returns 返回类型create function f1() returns intreturn
千家信息网最后更新 2025年02月01日MySQL--函数
- 创建-- SQL的函数必须有返回值-- create function 函数名称(参数列表) returns 返回类型create function f1() returns intreturn 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 intbegin-- 定义一个变量 resdeclare res int default 0;-- 将 a + b的结果赋值给 resset res = a + b;-- 返回 resreturn 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, 拼接结果的 resdeclare i int default 0;declare res varchar(300) default '';-- 2. 通过 while 递增 iwhile i <= 100 do-- 3. 判断 i 是否是偶数if i % 2 = 0 then-- 4. 拼接偶数set res = concat(res,' ',i);end if;-- 递增 iset i = i + 1;end while;-- 5. 返回 resreturn res;end//delimiter ;
0