OVH Cloud OVH Cloud

[ACC97] Requete

3 réponses
Avatar
Freddy
Bonjour à tous

J'ai une table composé de 3 champs
Matricule
Date
Service

Cette table m'indique la date de changement de service de salarié ainsi
que le nouveau service.
Ex
Matricule Date Service
10001 01/01/2000 service1
10001 30/06/2004 service2
10002 01/05/2004 service2
10002 15/07/2004 service3

Je souhaiterais faire une requête qui me ressort uniquement le statut
du/des salariés à un instant t
ce qui ferait au 15/06/2004
Matricule Date Service
10001 01/01/2000 Service1
10002 01/05/2004 Service2
au 05/07/2004 cela donnerait
Matricule Date Service
10001 30/06/2004 Service2
10002 01/05/2004 Service2
au 30/07/2004 on aurait
Matricule Date Service
10001 30/06/2004 Service2
10002 15/07/2004 Service3

Quelqu'un pourrait - il m'aider ?

Je vous remercie d'avance
Bonne journée :-)

--
Freddy

3 réponses

Avatar
Ilan
Bonjour,
Ce que tu veux est de connaitre les employes qui ont change de service au
maximum a l'instant t. Donc ta recherche se fait pour toutes les dates
inferieures ou egales a l'instant t.
SELECT * FROM Table WHERE Date<=t


Bonjour à tous

J'ai une table composé de 3 champs
Matricule
Date
Service

Cette table m'indique la date de changement de service de salarié ainsi
que le nouveau service.
Ex
Matricule Date Service
10001 01/01/2000 service1
10001 30/06/2004 service2
10002 01/05/2004 service2
10002 15/07/2004 service3

Je souhaiterais faire une requête qui me ressort uniquement le statut
du/des salariés à un instant t
ce qui ferait au 15/06/2004
Matricule Date Service
10001 01/01/2000 Service1
10002 01/05/2004 Service2
au 05/07/2004 cela donnerait
Matricule Date Service
10001 30/06/2004 Service2
10002 01/05/2004 Service2
au 30/07/2004 on aurait
Matricule Date Service
10001 30/06/2004 Service2
10002 15/07/2004 Service3

Quelqu'un pourrait - il m'aider ?

Je vous remercie d'avance
Bonne journée :-)

--
Freddy




Avatar
Freddy
Ilan a couché sur son écran :
Bonjour,
Ce que tu veux est de connaitre les employes qui ont change de service au
maximum a l'instant t. Donc ta recherche se fait pour toutes les dates
inferieures ou egales a l'instant t.


pas vraiment, je souhaite connaitre le service ou se trouve affecte les
employés à un instant t

SELECT * FROM Table WHERE Date<=t
cela va me donner l'ensemble des services ont été affecté avant cette

instant t.
il me presque cela, en selectionnant le premier dans sur le champ date
en décroissant.

euh, je ne sais pas si je suis clair :/

--
Freddy

Avatar
Ilan
Oops, pardon
ca doit plus ressembler a ca :
SELECT Matricule,Service,Max(Date) FROM Table GROUP BY Matricule,Service
Where Date<=t


Bonjour à tous

J'ai une table composé de 3 champs
Matricule
Date
Service

Cette table m'indique la date de changement de service de salarié ainsi
que le nouveau service.
Ex
Matricule Date Service
10001 01/01/2000 service1
10001 30/06/2004 service2
10002 01/05/2004 service2
10002 15/07/2004 service3

Je souhaiterais faire une requête qui me ressort uniquement le statut
du/des salariés à un instant t
ce qui ferait au 15/06/2004
Matricule Date Service
10001 01/01/2000 Service1
10002 01/05/2004 Service2
au 05/07/2004 cela donnerait
Matricule Date Service
10001 30/06/2004 Service2
10002 01/05/2004 Service2
au 30/07/2004 on aurait
Matricule Date Service
10001 30/06/2004 Service2
10002 15/07/2004 Service3

Quelqu'un pourrait - il m'aider ?

Je vous remercie d'avance
Bonne journée :-)

--
Freddy