SQL将多个局部变量输出到一列中

Mys*_*ond 6 sql t-sql sql-server

是否可以使用SQL将多个单独定义的局部变量作为单独的行输出到一列中?例如.

DECLARE var1 INT = 4
DECLARE var2 INT = 5
DECLARE var3 INT = 6
Run Code Online (Sandbox Code Playgroud)

然后以某种方式选择变量

SELECT (var1, var2, var3) AS UserIDs,
       ('u1', 'u2', 'u3') AS Names
Run Code Online (Sandbox Code Playgroud)

哪个会产生下表:

UserIDs | Names
   4    |  u1
   5    |  u2
   6    |  u3
Run Code Online (Sandbox Code Playgroud)

Pரத*_*ீப் 5

使用表值构造函数

SELECT *
FROM   (VALUES (@var1,'u1'),
               (@var2,'u2'),
               (@var3,'u3')) tc (UserIDs, Names) 
Run Code Online (Sandbox Code Playgroud)