MySQL DATEDIFF comportement Incohérence
Question
Quand j'utilise cette requête:
SELECT COUNT(*) FROM `my_table` WHERE DATEDIFF(NOW(), updated) > 2
MySQL exécute la requête sans erreur et je reçois le nombre de lignes qui ne sont pas mises à jour au cours des 2 derniers jours. Cependant, si je change la requête comme ceci:
SELECT * FROM `my_table` WHERE DATEDIFF(NOW(), updated) > 2
Je reçois l'erreur suivante:
#1305 - FUNCTION mydatabase.DATEDIFF does not exist
Toutes les idées pourquoi il en est ainsi?
La solution
J'ai eu un problème similaire où il ne fonctionnerait pas sur SELECT si j'avais pas encore défini la limite.
Essayez de faire quelque chose comme:
SELECT * FROM `my_table` WHERE DATEDIFF(NOW(), updated) > 2 LIMIT 0, 10
Il a obtenu une mise à jour corrigée sur MySQL. Essayez de mettre à jour votre version MySQL aussi.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow