在动态sql中声明一个变量

Declaring A variable inside dynamic ssql

我有以下字符串,想用@value 替换字符串末尾的>30,这样我就可以通过存储过程传递它。我如何声明@value。我的原始代码用 >35' 代替了 vaule 并且工作正常。提前致谢。

 Declare @value  int
 set  @value=30

 exec (' insert into results_stats select'''+
@tab_name+''','''+@col_name+''',max(len('+@col_name+')),'+@col_name+','''+@dat 
a_type+'''  from LIVE.'+@tab_name+' Group By '+@col_name+' Having 
max(len('+@col_name+'))'''+@value+'')

你想要sp_executesql()

通读 link 中的文档;它详细介绍了如何执行此操作。

另一件需要注意的事情是,您可能需要将 >35 中的 > 运算符作为字符串文字的一部分。