top
Loading...
SQLServer對select語句返回多條記錄給變量賦值時的處理情況
declare @user nvarchar(20)
select @user='user1'
use countme
/*判斷用戶是否存在*/
declare @userweek int
select @userweek=[week] from base where userid=@user
select @@rowcount
if @@rowcount=0
return
select @userweek

最后的@userweek打印出來的結果就是記錄用戶名為user1的week字段的值

而當我們用下面的語句選擇所有記錄時(沒有where限制)
declare @user nvarchar(20)
select @user='user1'
use countme
/*判斷用戶是否存在*/
declare @userweek int
select @userweek=[week] from base
select @@rowcount
if @@rowcount=0
return
select @userweek

最后@userweek打印出來的值是返回的所有記錄中排名最后一條記錄的week字段值

北斗有巢氏 有巢氏北斗