DECLARE @query as varchar(200);
SET @query = 'SELECT COUNT(*) FROM table';
Run Code Online (Sandbox Code Playgroud)
如何执行@query,此外,还有在分配变量时直接存储查询结果的方法吗?
Mar*_*ith 29
您可以使用sp_executesql带有output参数来检索的标量结果.
DECLARE @query as nvarchar(200), @count int;
SET @query = N'SELECT @count = COUNT(*) FROM table';
EXEC sp_executesql @query,
N'@count int OUTPUT',
@count = @count OUTPUT
SELECT @count AS [@count]
Run Code Online (Sandbox Code Playgroud)
aF.*_*aF. 12
你可以这样做:
exec (@query)
Run Code Online (Sandbox Code Playgroud)
或者,最好像这样:
execute sp_executesql @query
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请查看此MSDN文章.