SQL stat par semaine

Résolu
tomitomas Messages postés 4 Date d'inscription   Statut Membre -  
tomitomas Messages postés 4 Date d'inscription   Statut Membre -
Bonjour a tous,

voila mon petit soucis ....
je voudrais pouvoir regrouper des dates par semaines !!!
je m'explique, voila ma requete (sous Access) :
SELECT date, zone, count(statut)
FROM ma_table
WHERE date>=[début de période]
and date<=[fin de période]
GROUP BY date, zone; 
 

au lieu d'avoir des stats au jour le jour (par rapport a la période que j'ai renseignée), j'aimerai avoir une stat par semaine sur la période que j'ai donnée.

Ex avec le mois de janvier : ce que j'ai maintenant

zone \ date | 01/01/2007 | 02/01/2007 | ,,, | 31/01/2007
____1_____|_____6____|____15____| ... |_____ 4
____2_____|_____4____|____23____| ... |_____ 0

ce que je voudrais faire :

zone\semaine | semaine 1 | semaine 2 | ... | semaine 4
____1______|_____13___|____23___| ... |_____ 60
____2______|_____17___|____44___| ... |_____ 10

Par avance merci a tout ceux qui jetteront un coup d'oeil !

Tom
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. deus Messages postés 93 Statut Membre 91
     
    Salut
    tu peux essyer ceci

    SELECT 
    DATEADD(wk, DATEDIFF(wk, 5, Tadate), 5) as WeekGroup, 
    zone, 
    count(statut)
    FROM ma_table
    WHERE Tadate>=[début de période]
    and Tadate<=[fin de période]
    GROUP BY 
    DATEADD(wk, DATEDIFF(wk, 5, Tadate), 5) ,
    zone; 


    J'ai remplacé ton champ date par Tadate, car date est un mot réservé en SQL.

    1
  2. tomitomas Messages postés 4 Date d'inscription   Statut Membre
     
    merci pour ta réponse Deus !!!

    ceci dit a force de fouiller partout, j'ai enfin trouvé ma solution :

    SELECT DATEPART('ww',date) AS SEM, zone, count(statut) AS Stat
    FROM ma_table
    WHERE date>=[deb] And date<=[fin]
    GROUP BY DATEPART('ww',date),  zone;
    


    ta solution ne prendrait elle pas seulement les 5 premiere semaines de l'année ?? (--> a quoi sert le '5' ?? )
    Merci quand meme pour ton aide.

    TOM
    -1