【发布时间】:2011-06-09 10:59:05
【问题描述】:
我收到了类似的查询
select *
from stuff where stuff.id = 1
and start_Dt < = todays_date
and End_Dt > = todays_date
我问给我的人为什么要进行日期比较,答案是“开始日期和结束日期对于确保唯一记录匹配是必要的”
我很困惑,这种比较不等于任何可能的日期吗?
【问题讨论】:
-
stuff.id是主键吗? -
不确定,不这么认为
-
答案取决于您的数据库结构、该查询的参数以及您如何验证插入到表中的记录。没有这些数据很难回答你的问题。只要 start_Dt 低于 EndDt,它就会为您提供今天日期在其范围内的记录。
-
@StevieG:一点也不。看我的回答
-
这个表看起来像一个训练计划表,我们可以说用户想要当前正在进行的 id 为 1 的训练(将特定训练与当前训练集区分开来)而不是未来计划的训练或者哪个更早结束
标签: sql sql-server tsql datetime date-comparison