mysql中變量定義用declare來定義一局部變量,該變量的使用范圍只能在begin...end 塊中使用,變量必須定義在復合語句的開頭,並且是在其它語句之前,也可以同時申明多個變量,如果需要,可以使用default賦默認值。
昨天我們講了mysql教程存儲過程創建修改與刪除,下面我們這篇教程是講關於mysql存儲過程中變量的定義賦值操作哦。
一、變量的定義
mysql中變量定義用declare來定義一局部變量,該變量的使用范圍只能在begin...end 塊中使用,變量必須定義在復合語句的開頭,並且是在其它語句之前,也可以同時申明多個變量,如果需要,可以使用default賦默認值。
定義一個變量語法如下:
declare var_name[,...] type[default value]
看一個變量定義實例
declare last date;
二、mysql存儲過程變量賦值
變量的賦值可直接賦值與查詢賦值來操作,直接賦值可以用set來操作,可以是常量或表達式如果下
set var_name= [,var_name expr]...
給上面的last變量賦值方法如下
set last = date_sub( current_date(),interval 1 month);
下面看通過查詢給變量賦值,要求查詢返回的結果必須為一行,具體操作如下
select col into var_name[,...] table_expr
我們來通過查詢給v_pay賦值。
create function get _cost(p_custid int,p_eff datetime)
return decimal(5,2)
deterministic
reads sql data
begin
declare v_pay decimail(5,2);
select ifnull( sum(pay.amount),0) into vpay from payment where pay.payd<=p_eff and pay.custid=pid
reutrn v_rent + v_over - v_pay;
end $$
好了,這篇簡單的存儲過程中變量的定義賦值教程就到這裡了,下面我們會接著講關於myql存儲過程的條件的定義與處理。
注明,本站原創文章轉載注明來源http://www.bKjia.c0m/database/database.html