如何在这种情况下动态执行@SqlCondition?

时间:2017-12-16 06:36:45

标签: sql-server

我必须将@sqlcondition参数作为动态执行,有时它会附加到其他查询中。怎么办呢?

DECLARE @return_value int

EXEC @return_value = [dbo].MyProfile_Duplicate   
  @PageNum = 1,
  @PageSize = 50,
  @BreakDownTypeText = N'List',
  @CapOrderCount = NULL,
  @typeofCaporder = NULL,
  @PivotColname = NULL,
  @TableName = N'data',
  @BreakdownCondition = NULL,
  @Distance = NULL,
  @ZipCode = NULL,
  @SqlCondition =N'''SELECT LastSeen,MSACode, Age ,count (1) as TotalSearchCount FROM tablename  WHERE (year IN (''+(Select year FROM yeardata where addressno=1246)+''))  
and  1=1 group by LastSeen,MSACode, Age'''

1 个答案:

答案 0 :(得分:0)

--Finally Answer is got to my Question 

DECLARE @SqlCondition Nvarchar(max);
SET @SqlCondition ='Declare @query nvarchar(max); SET @query=';
SET @SqlCondition +=N'''SELECT LastSeen,MSACode, Age ,count (1) as TotalSearchCount FROM tablename  WHERE (year IN (''+(Select year FROM yeardata where addressno=1246)+''))  
                       and  1=1 group by LastSeen,MSACode, Age'''
SET @SqlCondition +=';EXEC sp_executesql @query';

EXEC(@SqlCondition);