2017-06-20 70 views
-1

我想选择大于当前日期和时间的行。如何获取大于当前日期和时间的行?

我想这个查询 - SELECT * FROM post WHERE post.pt_date > CURDATE()

我也试过这 - SELECT * FROM post WHERE post.pt_date > NOW()

,但我得到的行比当前的时间也更大。

如果当前日期时间是20/06/2017 02:55:22那么我希望行数大于同一日期,并且时间大于小时和分钟。

如何获取大于当前日期的日期?我想显示即将到来的日期。

这是数据我有

2017-06-17 18:53:00 
2017-06-17 19:01:00 
2017-05-30 06:30:04 
2017-06-17 06:30:04 
2017-06-19 14:14:00 
2017-06-19 14:26:00 
2017-06-19 15:25:00 
2017-06-19 15:31:00 
2017-06-19 15:33:00 
2017-06-20 15:35:00 
2017-06-20 15:58:00 
2017-06-19 06:30:04 
2017-06-20 16:16:00 
2017-06-19 06:30:04 
2017-06-19 17:29:00 
2017-06-20 17:30:00 
2017-06-20 17:47:00 
2017-06-20 19:29:00 
2017-06-20 19:37:00 
2017-06-20 13:59:00 
2017-06-20 13:59:00 
2017-06-20 14:28:00 
2017-06-20 14:33:00 
2017-06-20 14:37:00 
2017-06-20 14:52:00 

请帮帮忙谢谢​​你..

+0

什么是post.pt_date'的'数据类型。请显示示例输入和输出或更好的sqlfiddle – Jens

+0

你的意思是说,你想在今天23:59之后? – Martijn

+0

数据类型是日期时间。@ Jens – Sid

回答

0

你想增加一天以当前日期以获得将来的日期。事情是这样的:

SELECT * FROM post WHERE post.pt_date > DATE_ADD(CURDATE(), INTERVAL 1 DAY); 

要确保时间后,当前时间添加第二个WHERE条件:

SELECT * FROM post 
    WHERE post.pt_date > DATE_ADD(CURDATE(), INTERVAL 1 DAY) 
     AND TIME(post.pt_date) > CURTIME(); 
+0

你只是第二个更快,很好的答案:) – FMashiro

+0

我不想要这样的未来日期,我想要行比同一日期更大,并在时间大于小时和分钟。 – Sid

+0

我不想间隔,我可以得到今天的日期,但我不想要过去的时间。 @under – Sid