2016-12-01 38 views
1

如何在SQL Server中同時將值分配給差異參數?如何在SQL Server中同時將值分配給差異參數?

例如:

我有表的列有年齡,姓名,地址。如何將這些值分配到已聲明的參數@age int,@name varchar(max)@address varchar(max)

我寫了下面的代碼,但它不工作

set @age = age, 
set @name = name, 
set @address = address 
from [dbo].[test] 
+1

標籤與正在使用的數據庫你的問題。不要讓我們猜測。 –

回答

0

我不知道是哪的DMB您正在使用,但在MySQL中,你可以這樣做:

select @name := name, @age := age from dbo.test 

當然它只會存儲最後一行匹配的字段,所以你需要使用適當的where子句來選擇你感興趣的行。

你也可以使用set命令,但是你需要一個單獨的q uery對於要設置的每個字段:

set @name = (select name from dbo.test limit 1) 
set @age = (select age from dbo.test limit 1) 
0
SELECT @age = age,@name = name,@address = address FROM [dbo].[test] 
0
SELECT @age = age, 
     @name = name, 
     @address = address 
FROM dbo.test 
WHERE primarykey = somevalue 
相關問題