最短日期时间和最长日期时间

时间:2012-07-08 20:17:19

标签: sql sql-server-2008 tsql

我作为参数接收日期,此日期的格式为04/24/2012,所以在sql中我需要能够做类似的事情

SELECT * 
FROM MYTABLE 
WHERE OrderDate BETWEEN (04/24/2012 at 12 am (StartDate)) 
    AND (04/24/2012 at 11:59 pm (EndDate))

我有两个参数StartDate和EndDate

@StartDate nvarchar(50),
@EndDate nvarchar(50),

有时StartDate和EndDate不是同一个日期,因此它可能是2012年4月24日 - 2012年4月27日,这工作正常......问题是当他们在同一天做的时候。

1 个答案:

答案 0 :(得分:6)

尝试使用结束日期,但执行

orderdate >= @startdate and orderdate < Dateadd(d, 1, @enddate)

这种方式包括startdate和enddate之间的所有时间,如果它们在同一天。例如。大于或等于一天的开始但小于第二天的开始