2011-06-30 4 views
4

J'ai une table avec une colonne de date et je voudrais essayer de grouper par, en utilisant une semaine comme une référence de temps afin de compter combien de lignes se sont produites par semaine. Je l'ai fait pendant des jours, en utilisant GROUP BY Date (Date_Column) mais je ne sais pas comment faire cela par semaine?Regroupement MySQL par semaine, basé sur une colonne de date?

Merci

+0

Son délicate !!!. – gmhk

+0

J'avais une question similaire à celle-ci, mais je voulais regrouper les données de plusieurs colonnes de date montrant le total hebdomadaire pour chacun de ceux-ci. Cette question couvre ici - http://stackoverflow.com/questions/17563659/mysql-group-by-week-num-w-multiple-date-column – mikato

Répondre

2
SELECT week(Date_Column) 
FROM .... 
GROUP BY week(Date_Column); 
+0

Qu'en est-il le même numéro de semaine dans différentes années? –

+0

Les autres réponses semblent déjà aborder ce problème plutôt bien. – Flimzy

2

Essayez de mettre un GROUP BY YEARWEEK(date_column) à la fin de votre requête - cela prendra en considération aussi l'année la date est

5
SELECT ... 
FROM .... 
GROUP BY YEAR(Date_column), WEEKOFYEAR(Date_Column); 
+0

Merci, je viens de trouver la fonction Week() et ensuite lire le commentaire ci-dessus sur différentes années. – James

Questions connexes