声明动态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()

阅读链接中的文档;它详细介绍了如何做到这一点。

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

最新更新