SQl : travailler avec des datetime

Résolu/Fermé
le_joker_fou Messages postés 764 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 7 août 2014 - 28 janv. 2013 à 17:05
le_joker_fou Messages postés 764 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 7 août 2014 - 29 janv. 2013 à 12:06
Bonjour,

Je deviens fou, quand je fais la requêtes suivante :
SELECT * FROM ma_table WHERE 'date'>='2012-01-28 00:00:00'

Ça me retourne mes enregistrements.

Mais quand je fais :
SELECT * FROM ma_table WHERE 'date'<='2012-01-28 23:59:59'

Ça me retourne rien alors qu'en base j'ai des enregistrements.

Quelqu'un a-t-il une explication sur le problème?

Merci.
A voir également:

2 réponses

Utilisateur anonyme
28 janv. 2013 à 17:21
Bonjour

Si tu as mis 'date' entre apostrophes, c'est normal : 'date' est un texte qui commence par une lettre, et qui est donc plus grand que '2012-01-28 00:00:00' qui commence par un chiffre.
Je parie que ta première requête te rend TOUS tes enregistrements.
Écris tes requêtes sans apostrophes autour de 'date' si c'est le nom de ton champ :
SELECT * FROM ma_table WHERE date<='2012-01-28 23:59:59'
0
le_joker_fou Messages postés 764 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 7 août 2014 239
29 janv. 2013 à 08:53
Bonjour,

En fait je mets date entre les quotes du 7 (') car sinon il me prends date comme un mot SQL (comme WHERE, SELECT, UPDATE, etc...).

Enfin, j'avais oublié que MySQL gère mal les dates sur plusieurs années, étant en 2013 ça veut donc dire qu'il doit revenir de 2013 à 2012 et ça il n'aime pas, j'avais déjà eu le coup une fois.

Merci de ton aide.
0
Utilisateur anonyme
29 janv. 2013 à 11:09
Heureux que ton problème soit résolu, mais tes réponses m'étonnent.
'date' fait justement partie des exceptions qu'on peut utiliser sans les quotes de 7 dans mysql, comme ACTION, BIT, ENUM et quelques autres, contrairement à ASC, DESC,... qui eux doivent bien être obligatoirement entre quotes. Je viens de refaire l'essai pour m'en assurer.
Quant à mysql qui gère mal les dates sur plusieurs années, c'est de la pure fantaisie : il les gère très bien, il n'y a aucun doute là-dessus.
0
le_joker_fou Messages postés 764 Date d'inscription mercredi 5 août 2009 Statut Membre Dernière intervention 7 août 2014 239
29 janv. 2013 à 12:06
Je vais revoir ça, mais j'ai toujours eu des soucis au niveau des dates entre deux années.

Merci de ton aide.
0