如何在SQL Server中同時將值分配給差異參數?如何在SQL Server中同時將值分配給差異參數?
例如:
我有表的列有年齡,姓名,地址。如何將這些值分配到已聲明的參數@age int
,@name varchar(max)
和@address varchar(max)
?
我寫了下面的代碼,但它不工作
set @age = age,
set @name = name,
set @address = address
from [dbo].[test]
如何在SQL Server中同時將值分配給差異參數?如何在SQL Server中同時將值分配給差異參數?
例如:
我有表的列有年齡,姓名,地址。如何將這些值分配到已聲明的參數@age int
,@name varchar(max)
和@address varchar(max)
?
我寫了下面的代碼,但它不工作
set @age = age,
set @name = name,
set @address = address
from [dbo].[test]
我不知道是哪的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)
SELECT @age = age,@name = name,@address = address FROM [dbo].[test]
SELECT @age = age,
@name = name,
@address = address
FROM dbo.test
WHERE primarykey = somevalue
標籤與正在使用的數據庫你的問題。不要讓我們猜測。 –