Select .. inner join sur plusieurs tables
Bonsoir,
j'ai 2 tables (réduites aux colonnes utilisées dans l'exemple), et le résultat attendu
Pièce jointe 165619
Voici la requête que j'ai écrite, mais, elle ne fonctionne pas. j'ai un doublon :(
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
Select T1.id_pers,
T1.code_sal,
T2b.cal
from Table1 T1
inner join
(
select Max(date_cal) max_date_cal,id_pers
from Table2 where date_cal <= to_date('02/12/2015','DD/MM/YYYY')
group by id_pers
) T2
on T1.id_pers = T2.id_pers
inner join
(
select Max(date_code) max_date_code, id_pers
from Table1 where date_code <= to_date('02/12/2015','DD/MM/YYYY')
group by id_pers
) T3
On T1.id_pers = T3.id_pers
inner join Table2 T2b on T2.id_pers =T2b.id_pers and T2b.date_cal=max_date_cal
inner join Table1 T1b on T3.id_pers =T1b.id_pers and T1b.date_code=max_date_code
where T1.id_pers in (15,35)
group by T1.id_pers, T1.code_sal, T2b.cal |
Avez-vous une idée?
D'avance, merci