在一个 SELECT 语句中设置两个标量变量?

2021-09-10 00:00:00 sql tsql sql-server

我想这样做:

Declare @a int;
Declare @b int;

SET @a,@b = (SELECT StartNum,EndNum FROM Users Where UserId = '1223')

PRINT @a
PRINT @b

但这是无效的语法.如何在一个 select 语句中设置多个标量变量?我可以:

But this is invalid syntax. How do I set multiple scalar variables in one select statement? I can do:

Declare @a int;
Declare @b int;

SET @a = (SELECT StartNum FROM Users Where UserId = '1223')
SET @b = (SELECT EndNum FROM Users Where UserId = '1223')

PRINT @a
PRINT @b

但这需要两倍的时间.最快的方法是什么?

But this will take twice as long. What is the fastest way?

推荐答案

DECLARE @a int;
DECLARE @b int;

SELECT @a = StartNum, @b = EndNum 
FROM Users 
WHERE UserId = '1223'

相关文章