为什么这个MySQL查询返回0个结果
我试图获取过去5分钟内的所有记录,但没有返回任何结果为什么这个MySQL查询返回0个结果,mysql,Mysql,我试图获取过去5分钟内的所有记录,但没有返回任何结果 SELECT * FROM (`user_actions`) WHERE `IP` = '127.0.0.1' AND `type` = 'Failed Login' AND date =DATE_SUB(NOW(), INTERVAL 5 MINUTE) 它什么也不返回,因为你所要求的没有结果。。。。正好是5分钟前的日期 您不应该对日期使用=运算符,您应该使用不等式 也就是说,您希望日期大于5分钟前它应该是date>而不是date=,这
SELECT * FROM (`user_actions`) WHERE `IP` = '127.0.0.1' AND `type` = 'Failed Login' AND date =DATE_SUB(NOW(), INTERVAL 5 MINUTE)
它什么也不返回,因为你所要求的没有结果。。。。正好是5分钟前的日期 您不应该对日期使用
=
运算符,您应该使用不等式
也就是说,您希望日期大于5分钟前它应该是
date>
而不是date=
,这将只匹配正好等于5分钟前时间的行
例如,如果当前是12:30PM,要查找最近5分钟内的行,您需要所有时间大于12:25PM的行。仅查询时间等于12:25PM的行不会提供在12:26PM、12:27PM等时间记录的行
SELECT * FROM user_actions WHERE IP = '127.0.0.1' AND type = 'Failed Login' AND date > DATE_SUB(NOW(), INTERVAL 5 MINUTE)
您的数据是什么样子的?我们可以假设它没有返回任何内容,因为实际上没有任何内容……在查询人员中很容易发现逻辑错误,您不需要任何数据就能看到它。没有必要投反对票。我认为这里的反对票很严厉。考虑到他对自己努力实现的目标的解释,他的错误是显而易见的。