嗨朋友我必须使用存储过程从db显示记录。
显示从我使用的日期到另一个日期的记录:
and Tbl_GDS_Request.RequestedDate between '''+ convert(varchar(20),@p_FromDate) + '''
and ''' + convert(varchar(20), @p_ToDate) + ''''
但是,如果我只想显示fromdate
条记录(即仅显示2013/11/07日期的记录)或日期记录,即只显示2013/11/07
日期的记录。
如何显示单个日期的记录?
请帮我解决。
答案 0 :(得分:0)
为每个语句创建OR选择。 这看起来如下。 (代码未经测试)
CREATE PROC Procname
(
@date1 datetime IS NULL,
@date2 datetime IS NULL
)
AS
select
*
from
atable a
where
--when both dates are filled in
(@date1 is not NULL
AND @date2 is not NULL
AND a.date >= @date1
AND a.date <= @date2)
OR
--when only todate is filled in
(@date1 is NULL
AND @date2 is not NULL
AND a.date <= @date2)
OR
-- when only fromdate is filled in
(@date1 is not NULL
AND @date2 is NULL
AND a.date >= @date1)