Php SQL查询以显示过去超过60的行
我的数据库中有一行日期时间为Php SQL查询以显示过去超过60的行,php,mysql,sql,Php,Mysql,Sql,我的数据库中有一行日期时间为 2013-11-07 13:04:57 然后我运行这个查询: SELECT * from customer_communication WHERE customer_seq = '276' and datetime < DATE_SUB(DATE(now()), INTERVAL 60 DAY) order by datetime DESC 所以它不应该返回这一行 我想显示日期时间在过去超过60天的所有行日期2013-
2013-11-07 13:04:57
然后我运行这个查询:
SELECT * from customer_communication
WHERE customer_seq = '276'
and datetime < DATE_SUB(DATE(now()), INTERVAL 60 DAY)
order by datetime DESC
所以它不应该返回这一行
我想显示日期时间在过去超过60天的所有行日期2013-11-07 13:04:57在过去超过60天:
SELECT DATE_SUB(DATE(NOW()), INTERVAL 60 DAY);
=> 2013-11-10
11月10日或之前的任何日期将从1月9日起显示
# Show difference in days.
SELECT DATEDIFF(DATE(NOW()),'2013-11-07');
=> 63
此外,您应该使用,问题是当前查询将选择早于一个日期时间值的行。您需要将比较符号更改为:
datetime > DATE_SUB(DATE(now()), INTERVAL 60 DAY)
日期2013-11-07 13:04:57过去超过60天。您可以使用
比如说,
DATEDIFFdate1、date2<60您使用什么sql server?太太mysql?你为什么说它不应该返回那一行?@PatrickQ不应该,因为它已经不是过去的60多天了。它的日期时间在今天的60天内date@charlie你应该再从今天开始倒数。60天前是2013-11-10对你来说好消息和坏消息@charlie。好消息是您的代码是正确的。坏消息是你似乎认为2013-11-07不到60天前,这只能意味着一件事。。。你不小心走入了未来!欢迎。问题要求仅选择过去60天或更长时间的行。SQL comparator告诉数据库在当前日期的60天内查找行。我想说更好的比较器应该是No,这个查询将在过去60天内返回值select NOW+INTERVAL 1 DAY>NOW返回1 true。由此,我们可以看出,较早的日期比较晚的日期少。如果要查找早于某个日期的日期,则必须使用