2016-09-08 20 views
0

我的信用表有以下數據如何更改mysql中的本地變量以保持對自身的引用?

Id 
1 
2 
3 

我想從信用卡選擇表中的ID,保持參照自身遞減一個存儲過程內聲明的變量。

我已經通過以下方式

delimiter // 
create procedure xxx() 
begin 
declare var int default 200; 
set @t=100; 
select @t:[email protected] as result from credit; 

end // 

上面的存儲過程返回以下結果

result 
99 
97 
94 

我的問題是如何使用MySQL的地方來達到同樣的結果集這樣做使用會話變量變量。

回答

0

撇開將這樣的功能seqientially分配的整數,並且,在沒有order by子句的,你不能保證一致的行爲事實的utlity,你有沒有試過....

delimiter // 
create procedure xxx() 
begin 
    declare var int default 200; 
    set @t=100; 
    UPDATE credit SET credit.result=(@t:[email protected]) 
    ORDER BY id; 
end // 

(我沒有,所以不guaranteees這裏)

+0

我的問題是,如何使用局部變量像會話變量 你描述什麼,我不明白 – Man

相關問題