Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Michel__D
Bonjour,
"Ruiball" a écrit dans le message de news:
Bonjour,
Je garde les données de l'entrée et sortie du personnel de mon enterprise de
la façon suivante:
carte heure mode Date
100 10:00 E 23/02/2009
102 10:01 E 23/02/2009
100 14:00 S 23/02/2009
100 16:00 E 23/02/2009
100 20:00 S 23/02/2009
Comment je pourrais faire pour avoir:
carte date entree1 sortie1 entree2 sortie2
100 23/02/2009 10:00 14:00 16:00 20:00
102 23/02/2009 10:01 .... ..
Merci d'avance
Essaye avec cette requête (à adapter) :
TRANSFORM First(T.HeureEnr) AS Valeur SELECT T.carte, T.DateEnr FROM [SELECT T1.carte, T1.DateEnr, T1.mode, T1.HeureEnr, Count(T2.HeureEnr) AS Rang FROM LaTable AS T1 INNER JOIN LaTable AS T2 ON (T1.carte=T2.carte) AND (T1.DateEnr=T2.DateEnr) AND (T1.mode=T2.mode) AND (T1.HeureEnr>=T2.HeureEnr) GROUP BY T1.carte, T1.DateEnr, T1.mode, T1.HeureEnr]. AS T GROUP BY T.carte, T.DateEnr PIVOT T.Rang & "_" & T.mode;
Bonjour,
"Ruiball" <ruiball@defvercom.net> a écrit dans le message de news: Odt6v5qlJHA.3888@TK2MSFTNGP02.phx.gbl...
Bonjour,
Je garde les données de l'entrée et sortie du personnel de mon enterprise de
la façon suivante:
carte heure mode Date
100 10:00 E 23/02/2009
102 10:01 E 23/02/2009
100 14:00 S 23/02/2009
100 16:00 E 23/02/2009
100 20:00 S 23/02/2009
Comment je pourrais faire pour avoir:
carte date entree1 sortie1 entree2 sortie2
100 23/02/2009 10:00 14:00 16:00 20:00
102 23/02/2009 10:01 .... ..
Merci d'avance
Essaye avec cette requête (à adapter) :
TRANSFORM First(T.HeureEnr) AS Valeur
SELECT T.carte, T.DateEnr
FROM [SELECT T1.carte, T1.DateEnr, T1.mode, T1.HeureEnr,
Count(T2.HeureEnr) AS Rang
FROM LaTable AS T1 INNER JOIN LaTable AS T2
ON (T1.carte=T2.carte) AND (T1.DateEnr=T2.DateEnr)
AND (T1.mode=T2.mode) AND (T1.HeureEnr>=T2.HeureEnr)
GROUP BY T1.carte, T1.DateEnr, T1.mode, T1.HeureEnr]. AS T
GROUP BY T.carte, T.DateEnr
PIVOT T.Rang & "_" & T.mode;
Je garde les données de l'entrée et sortie du personnel de mon enterprise de
la façon suivante:
carte heure mode Date
100 10:00 E 23/02/2009
102 10:01 E 23/02/2009
100 14:00 S 23/02/2009
100 16:00 E 23/02/2009
100 20:00 S 23/02/2009
Comment je pourrais faire pour avoir:
carte date entree1 sortie1 entree2 sortie2
100 23/02/2009 10:00 14:00 16:00 20:00
102 23/02/2009 10:01 .... ..
Merci d'avance
Essaye avec cette requête (à adapter) :
TRANSFORM First(T.HeureEnr) AS Valeur SELECT T.carte, T.DateEnr FROM [SELECT T1.carte, T1.DateEnr, T1.mode, T1.HeureEnr, Count(T2.HeureEnr) AS Rang FROM LaTable AS T1 INNER JOIN LaTable AS T2 ON (T1.carte=T2.carte) AND (T1.DateEnr=T2.DateEnr) AND (T1.mode=T2.mode) AND (T1.HeureEnr>=T2.HeureEnr) GROUP BY T1.carte, T1.DateEnr, T1.mode, T1.HeureEnr]. AS T GROUP BY T.carte, T.DateEnr PIVOT T.Rang & "_" & T.mode;