Haciendo una query en un MySQL con una fecha mal formada, a priori, yo esperaría que no devolviera ningún resultado. Podemos comprobar que MySQL considera mejor devolver algún resultado, aunque sean en realidad TODOS los resultados.
Si hacemos un explain de una query con una fecha malformada:
mysql> explain select * from sales where creationDate < '2012-08-27T17:00:02+02:00'\W; Show warnings enabled. +----+-------------+-------+------+---------------+------+---------+------+---------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+-------+------+---------------+------+---------+------+---------+-------------+ | 1 | SIMPLE | sales | ALL | NULL | NULL | NULL | NULL | 6750684 | Using where | …[Lea más]