我们可以在where子句的左侧使用参数到SP [英] Can we use parameter to SP on left side of where clause
问题描述
你好朋友,
我在一个地方吮吸。
我的表名为
RPT_MRFProgressDetails
有列
MRFM_ReqdByDate,MPD_CurrReqdByDateRM
从前端用户可以使用日期控制选择日期和日期,日期控制以字符串格式(dd / mm / yyyy)发送给SP。
我想在SP中使用的逻辑是。
1.检查MPD_CurrReqdByDateRM是否为null然后它在From和To Date之间。
2.如果它为null,然后检查MRFM_ReqdByDate是否在
Hello Friends,
I have suck at one place.
I have table named
RPT_MRFProgressDetails
which has column
MRFM_ReqdByDate, MPD_CurrReqdByDateRM
From front user can select from and to date using date control which is send in string format (dd/mm/yyyy) to SP.
Logic i want to use in SP is that.
1. Will check MPD_CurrReqdByDateRM is not null then it is between From and To Date.
2. If it is null, then will check MRFM_ReqdByDate is between
From and To Date.
我写的逻辑如下:
I have written logic in So as follows:
create procedure [dbo].[SP_RPTGetMRFsForResMgr]
(
@MRFM_FrDt varchar(10),
@MRFM_ToDt varchar(10)
)
as
begin
select ..... from RPT_MRFProgressDetails
where convert(datetime,@MRFM_FrDt,103) <= isnull(MPD.MPD_CurrReqdByDateRM, MM.MRFM_ReqdByDate)
and convert(datetime,@MRFM_ToDt,103) >= isnull(MPD.MPD_CurrReqdByDateRM, MM.MRFM_ReqdByDate)
end
我们可以在左侧使用参数,在where子句的右侧使用cloumns吗?
还有其他方法吗?
提前致谢:)
Can we use parameter in left side and cloumns on right side of where clause?
Any other way to do this?
Thanks in advance :)
推荐答案
您可以使用 COALSEC [ ^ ]和 BETWEEN [ ^ ]逻辑。试试这样....
Hi,
You can use COALSEC[^] and BETWEEN[^] logic for this. Try like this....
create procedure [dbo].[SP_RPTGetMRFsForResMgr]
(
@MRFM_FrDt varchar(10),
@MRFM_ToDt varchar(10)
)
as
begin
select ..... from RPT_MRFProgressDetails
where CONVERT(DATETIME,COALESCE(MPD_CurrReqdByDateRM,MRFM_ReqdByDate),103) BETWEEN @MRFM_FrDt AND @MRFM_ToDt
end
问候,
GVPrabu
Regards,
GVPrabu
这篇关于我们可以在where子句的左侧使用参数到SP的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!