sql只在这些日期之间获取记录

时间:2012-10-23 20:14:59

标签: mysql sql

在我的表中,我有这个

start_date   end_date   record_id
2012-10-05   2012-11-05   1 
2012-10-06   2012-12-05   2 
2012-10-05   2012-09-05   3 
2012-11-05   2012-11-30   4 
2012-09-05   2012-11-21   5 
2012-10-05   2012-11-22   6   

如果今天的日期是2010-10-05我想选择范围内的所有记录,即从今天或更早开始但还没有到达end_date的记录

所以在这种情况下它将是

2012-10-05   2012-11-05   1 
2012-10-06   2012-12-05   2 
2012-09-05   2012-11-21   5  // doesnt't end till 2012-11-21
2012-09-05   2012-11-22   6  // doesnt't end till 2012-11-22

1 个答案:

答案 0 :(得分:4)

SELECT * FROM TABLE
WHERE start_date < SYSDATE()
AND  end_date  > SYSDATE()

假设您的start_dateend_date属于DATE类型,否则您需要转换为DATE