我有以下字符串,希望用@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
中的>
运算符作为字符串文字的一部分。