我正在使用以下查询
SELECT @local_variable=Adtid from table where Adtid
可以存储多个值。因为我不知道在@ local_variable = Adtid中使用什么而不是'='。任何人都可以建议我应该使用什么而不是'=',以便我的本地变量可以拥有Adtid的所有值
答案 0 :(得分:1)
变量实际上不能包含多个值。您可以改为声明一个表变量,然后可以执行类似
的操作declare @tableVariable table
(
Adtid int
);
insert into @tableVariable
select Adtid from table where Adtid ...
这会将相关行放在表变量中。现在您可以使用表变量来例如。创建一个游标(在数据中逐行进行 - 如果只需要经过一次,也可以在原始选择上执行)或在join
子句中使用它。
答案 1 :(得分:0)
您可以使用以下语法将Adtid作为结果
中的逗号分隔符DECLARE @local_variable VARCHAR(100) =''
SELECT @local_variable += CAST(Adtid AS VARCHAR) + ',' FROM TABLE
PRINT @local_variable
以及另一种方式,如下面的答案。