如何取出不在两个日期之间的所有行?

时间:2014-11-30 20:23:33

标签: php mysql database date

例如,我的数据库中有两列:

Date1和Date2。我输入了我的输入字段(field1 = 12/11/14和field2 = 22/11/14)。所以我想把所有行都放到我的表中,其日期低于12/11/14且高于22/11/14。我的查询应该怎么样?

我会更清楚地提出我的问题。

这是我的DB:

enter image description here

所以我将rent_date客户从11/12/14租了一辆车,并在11/22/14返回。有5个客户,只有一个会在11/12/1411/22/14之间租车。所以我想选择在这两个日期之间没有租车的其他4个客户。我希望我很清楚。 :)

3 个答案:

答案 0 :(得分:1)

我相信你可以使用BETWEEN运算符来检查rent_date是否在你的时间间隔之间,如下所示:

SELECT *
FROM myTable
WHERE rent_date NOT BETWEEN '2014-11-12' AND '2014-11-22'

答案 1 :(得分:0)

您需要使用范围查询。

SELECT foo FROM bar WHERE timestamp BETWEEN timestamp1 AND timestamp2

答案 2 :(得分:0)

如果您要查找租金和退货日期不在给定范围内的记录,您可以通过比较date S来使用查询,如下所示:

SELECT * FROM DB WHERE rent_date < '2014-11-12 00:00:00' OR return_date > '2014-11-22 23:59:59'