標籤: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 ;
MySQL--函數