开发者社区> 问答> 正文

比较SQL中的生效日期

想知道为什么在需要查看有效的开始日期和结束日期的WHERE子句中选择记录更好?

目前,这就是我过去在MS SQL Server上所做的方式。只是担心日期而不是时间。我正在使用SQL Server 2005。

AND Convert(datetime, Convert(char(10), ep.EffectiveStartDate, 101))
   <= Convert(datetime, Convert(char(10), GetDate(), 101))
AND Convert(datetime, Convert(char(10), ep.EffectiveEndDate, 101))
   >= Convert(datetime, Convert(char(10), GetDate(), 101))

展开
收起
心有灵_夕 2019-12-25 21:14:59 861 0
1 条回答
写回答
取消 提交回答
  • 您可以使用

    set @date2 = '20201001'
    

    footndale-您也可以使用日期算术删除时间。就像是

    select dateadd(d, datediff(d, 0, CURRENT_TIMESTAMP), 0)
    
    

    获取今天的日期(无时间)。我相信这比来回转换更有效。

    2019-12-25 21:15:37
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载