Bonsoir,

J’ai deux tables=>
tab1 (id1, voiture, matricule1, date1, codePersonne)
Tab2 (id2, nom2, prenom2, matricule2)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
SELECT *
FROM tab1 t1, tab2 t2
WHERE t1. codePersonne = t2.id2
Cette requête me donne plusieurs lignes sur même personne mais moi je veux que la ligne de la date plus récente pour chaque personne

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT *
FROM tab1 t1, tab2 t2
WHERE t1.codePersonne = t2.id2
And t1.date1= (select max (date1) from tab1)
Mais cette requête donne le max de ts
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
SELECT *
FROM tab1 t1, tab2 t2
WHERE t1.codePersonne = t2.id2
And t1.codePersonne = (select codePersonne from tab1 where date1= (select (max (date1) from tab1)
Mais cette requête me donne une erreur d oracle : ora 01427 (car j ai plusieurs lignes)

Est-ce que je dois faire un group by ou faire 2 requêtes dans ce cas ?