2010-08-06 58 views
1

我有一个公告表结构,如何检查现在()是否在两个特定日期之间?

Msgid int, 
title varchar(150) 
message text 
date_from datetime 
date_to datetime 

我想列出今天将到期的所有公告(即)公告,其中今天的日期下降的B/W date_from和DATE_TO。

有什么想法?

+0

一定到'date_to'值与存储的'23时:59:59',如果你想你的消息,显示的最后一天。将列重命名为'datetime_from'和'datetime_to'可能会减少混淆... – Julien 2015-06-04 13:30:51

回答

14
WHERE NOW() BETWEEN date_from AND date_to 
+1

确实。这通常是*(但不一定总是)比WHERE NOW()> = date_from和NOW()<= date_to'更高效。 – Romain 2010-08-06 09:41:28

+0

BETWEEN是否包含范围的端点? – 2010-08-06 09:50:03

+0

是的,它是罗曼在第一个评论中展示的。 – 2010-08-06 10:21:33

0
SELECT title, message 
FROM announcements 
WHERE NOW() BETWEEN date_from AND date_to 
相关问题