T-SQL选择语句作为变量并且导致另一个变量

时间:2015-11-30 19:53:57

标签: sql-server tsql

这是我职能的最后一部分:

 SET @output = (@query)
 RETURN @output

我试过这样:(我也试过' exec sp_executesql(@query)'并且它没有用)

rdfs:Class

结果我得到的是我想要的确切SQL查询。但是,如何运行(执行)@query及其结果(在这种情况下它是一个十进制数)放入变量@output并返回??

1 个答案:

答案 0 :(得分:3)

尝试类似......

Declare @query     NVarchar(MAX)
      , @outColumn SYSNAME
      , @Out       DECIMAL(10,2)

SET @query =  N' SELECT TOP 1 @Out = ' +QUOTENAME(@outColumn) 
           +  N' FROM [Production].[dbo].[v_time] '
           +  N' WHERE textile LIKE ''%'' + @outTextile + ''%'''

 Exec sp_executesql @query
                   ,N'@outTextile VARCHAR(50) , @Out DECIMAL(10,2) OUTPUT'
                   ,@outTextile
                   ,@Out OUTPUT