Bonjour,

Toujours avec ma base Access cliente d'un serveur SQL Server 2000.

Je dois rechercher sur les 13 derniers mois des informations concernant les matins et les après midi.
Il faut compter le nombre de fois ou des personnes ont badgé entre minuit et midi (00:00 et 11:59) et le nombre de fois pour le reste de la journée (12:00 et 23:59).

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
SELECT 
              cnt1.NomMois +' '+ CAST(cnt1.Année AS NVARCHAR) AS [Date]                                                                                           
           ,  COUNT(Compte) AS [Nombre]                             
FROM                                                                                                                                                               
(
SELECT 
 
       CASE Month([TVAL_DT_VALIDATION])                                                                                                                   
           WHEN  1 THEN 'Janvier'
           WHEN  2 THEN 'Février'
           WHEN  3 THEN 'Mars'
           WHEN  4 THEN 'Avril'
           WHEN  5 THEN 'Mai'
           WHEN  6 THEN 'Juin'
           WHEN  7 THEN 'Juillet'
           WHEN  8 THEN 'Août'
           WHEN  9 THEN 'Septembre'
           WHEN  10 THEN 'Octobre'
           WHEN  11 THEN 'Novembre'
           WHEN  12 THEN 'Décembre'
 
       END AS NomMois
     , Year([ChampsDate]) AS Année
     , M.Champs AS Compte
 
FROM 
       MaTable M
 
WHERE
       M.ChampsDate >= '01/09/2007'        
   AND M.ChampsDate < '01/10/2008'
   AND CAST(FLOOR(CAST(DATEPART(hh, ChampsDate) AS FLOAT)) AS DATETIME) < '12:00'
) cnt1
 
GROUP BY
             cnt1.NomMois +' '+ CAST(cnt1.Année AS NVARCHAR)
 ;
Pour le matin, cela ne me renvois pas les bons résultats. Lorsque je mets "> '11:59' " cela semble juste.

Merci d'avance !