将值传递给动态查询

时间:2019-04-02 08:10:42

标签: tsql

我有一个查询,其中我在作业中声明了两个上下文变量(@ projectId,@ version),并使用这些变量运行查询。我运行的条件是,如果您在上下文变量中找到该值,然后使用该值运行,如果为null,则对表中的所有数据运行。当上下文变量填充时,我的查询有效,但是当上下文变量为null时,它不显示任何结果。我无法理解查询中的错误。我的查询就像:

Declare @projectId int;
Declare @version varchar(20);
set @projectId = ” + context.projectId + “;
set @version = ‘” + context.version + “‘;
select *
from SA.VAP_RESOURCE r
where ETL_ACTIVE_FLG = 1 and BUDGET_FLAG = 0
and PROJECT_ID = case when @projectId is null then PROJECT_ID else @projectId end
and CALCULATION_VERSION = case when @version is null then CALCULATION_VERSION else (”+ @version +”) end

问候 普里亚(Priya)

0 个答案:

没有答案