查找日期范围内的记录

时间:2012-07-05 14:08:18

标签: sql

如果我想查找日期范围内的活动记录,我是否需要将表连接到自己或只是一个单独的子句足够? 表的模式类似于:

active_ind  bool
beg_dt_tm   datetime
end_dt_dm   datetime 

并且查询传入一个datetime参数来查找该范围内的记录,所以我想知道像这样的psedu-sql就足够了,还是我需要加入到表中,为什么?

select * 
from   MyTable mt
where  mt.active_ind = true 
and    param between mt.beg_dt_tm and mt.end_dt_tm 

1 个答案:

答案 0 :(得分:0)

在这种情况下,您不得使用BETWEEN。 这样做:

select * 
from MyTable mt
where
    mt.beg_dt_tm >= param and 
    mt.end_dt_tm <= param