动态Sql查询中具有局部变量的运算符 [英] Operators with Local variable in Dynamic Sql Query
本文介绍了动态Sql查询中具有局部变量的运算符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嗨gud晚上,
Hi gud evening,
DECLARE @PFactor NUMERIC
SELECT @PFactor=MonPfactor FROM dbo.CbzCurMst WITH(NOLOCK) WHERE CurType='INR'
SELECT Vw.PrdVarCode AS [SKU],
(SELECT CASE WHEN Sale=0 THEN Price*@PFactor
ELSE Sale*@PFactor
END ) AS [Price],....
请更改此查询
Kindly change in this query
DECLARE @PFactor NUMERIC
SELECT @PFactor=MonPfactor FROM CbzCurMst WHERE CurType=''INR''
SELECT Vw.PrdVarCode AS [SKU],
(SELECT CASE WHEN Sale =0 THEN Price * @PFactor ELSE Sale*@PFactor END ) AS [Price]
如何在动态查询中传递@PFactor
how to pass @PFactor in dynamic query
推荐答案
您将使用sp_exexutesql为此。
Hi ,
You will use sp_exexutesql for this.
exec sp_executesql @QueryString,N'@PFactor NUMERIC(18,2)'
,@PFactor
查看以下链接
执行sp_executesql的优势 [ ^ ]
SP_EXECUTESQL vs EXECUTE / E XEC [ ^ ]
sp_executesql(Transact-SQL) [ ^ ]
问候,
GVPrabu
Check the following links
Advantage of sp_executesql over Exec[^]
SP_EXECUTESQL vs EXECUTE/EXEC[^]
sp_executesql (Transact-SQL)[^]
Regards,
GVPrabu
尝试
SET @PFactor=(SELECT MonPfactor FROM dbo.CbzCurMst WITH(NOLOCK) WHERE CurType='INR'
这篇关于动态Sql查询中具有局部变量的运算符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文