Bonjour a tous.

Voilà, j'ai une petite difficulté.

J'ai une requete (pour un curseur) qui doit retourner l'element dont la date_debut_contrat est le max des dates_debut_contrat et si celle ci est nulle, qui retourne le max de la date_fin_contrat.

Voici le code, ca sera plus explicite:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
select agt.nom, agt.prenom
from agents_contrats agt
where 
agt.date_debut_contrat = (
    select max(agt2.date_debut_contrat)
    from agents_contrats agt2
    where agt2.nom = agt.nom and agt2.prenom = agt.prenom
)
Mais là, si le select max retourne null, il faut que je teste ce truc là:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
agt.date_fin_contrat = (
    select max(agt2.date_fin_contrat)
    from agents_contrats agt2
    where agt2.nom = agt.nom and agt2.prenom = agt.prenom
)
Et là, je vois pas comment faire pour imbriquer ces deux tests...

Merci de m'eclairer de vos lumieres si vous avez une idée!