cs_Fayo
Messages postés10Date d'inscriptionlundi 18 avril 2005StatutMembreDernière intervention22 avril 2010
-
21 avril 2010 à 23:17
cs_Fayo
Messages postés10Date d'inscriptionlundi 18 avril 2005StatutMembreDernière intervention22 avril 2010
-
22 avril 2010 à 00:35
Bonsoir à tous,
J'aimerai récupérer tous les enregistrements d'une table, dans un intervalle de temps.
Le champs date de ma table est un datetime, seulement j'aimerai faire cet intervalle sans relation avec le jours du mois (entre 2009-03 et 2010-01 compris par exemple).
J'ai essayé plusieurs requêtes sans succès :
SELECT COUNT( id ) , MONTH( date ) , YEAR( date )
FROM matable
WHERE date BETWEEN '2009-02' AND '2010-03'
GROUP BY YEAR( date ) , MONTH( date )
ou encore
SELECT COUNT( id ) , MONTH( date ) , YEAR( date )
FROM matable
WHERE YEAR(date)>= 2009
AND MONTH(date)>=1 OR YEAR(date)<=2010
AND MONTH(date)<=1
GROUP BY YEAR( date ) , MONTH( date )
cs_Fayo
Messages postés10Date d'inscriptionlundi 18 avril 2005StatutMembreDernière intervention22 avril 2010 22 avril 2010 à 00:35
J'ai résolu le problème en passant par la fonction SUBSTR de sql
SELECT COUNT( id ) , MONTH( date ) , YEAR( date )
FROM matable
WHERE SUBSTR(date, 1, 7) BETWEEN '2009-02' AND '2010-03'
GROUP BY YEAR( date ) , MONTH( date )