J'ai une requête SQL qui me retourne, pour chaque date distincte et pour chaque NOM, le nombre d'heures.
J'obtiens ainsi le résultat suivant pour un NOM :
PAUL
01/01/2015 08:00
12:00:00
PAUL
08/01/2015 08:00
12:00:00
PAUL
08/01/2015 20:00
11:59:00
PAUL
12/01/2015 08:00
12:00:00
PAUL
22/01/2015 08:00
12:00:00
J'aimerais obtenir le résultat pour chaque nom sur une ligne en faisant la somme du nombre d'heure.
Je ne sais pas comment faire avec le group by...
La requête initiale :
Code:
sSQLSting = "SELECT Distinct NOM,DATE_DEBUT,DATE_FIN - DATE_DEBUT as tot FROM [Data$] WHERE NOM = 'PAUL' "
Je suis arrivé à compter le nombre de date distinctes avec ce code :
Code:
sSQLSting = "SELECT T.NOM,COUNT(T.DATE_DEBUT) FROM (SELECT DISTINCT NOM,DATE_DEBUT FROM [Data$]) as T GROUP BY NOM"
Avec la requête ci-dessous je compte le nombre d'affectation sur une fonction et un engin :
Code:
sSQLSting = "SELECT GRADE,NOM,PRENOM,COUNT(ENGIN) From [Data$] WHERE ENGIN = '" & Engin & "' AND FONCTION = '" & fct & "' GROUP BY GRADE,NOM,PRENOM ORDER BY GRADE,NOM,PRENOM "
Comment pourrais-je mettre en relation ces deux requêtes pour avoir à l'affichage ci-dessous :
NOM NB AFFECTATION NB DATE
DURANT 2 14
Le 2 correspond à la deuxième requête et le 14 à la première.