Jointure externe avec "select in"
Bonjour,
j'utilise SQL Developper sur une base Oracle.
j'ai une table de transformateurs électriques et une table de mouvements sur ces transformateurs
un transformateur peut avoir 0 à n mouvements
Je veux récupérer l'intégralité de mes transfos, et si le transfo possède au moins un mouvement, récupérer le mouvement le plus récent
pour joindre mes 2 tables, j'ai fait au plus simple :
Code:
1 2 3 4 5 6 7 8 9
| select
transfo.CODE,
transfo.ANNEE_FABRICATION,
transfo.FABRICANT,
mvt.code_mouvement,
mvt.date_mouvement,
mvt.motif_mouvement,
from E_TRANSFORMATEUR transfo, e_mouvement_transformateur mvt
where transfo.id = mvt.e_transformateur(+) |
ça, ça fonctionne.
mais pour récupérer uniquement le dernier mvt, je voudrais y ajouter cette clause tout en restant sur une jointure externe :
Code:
1 2 3 4
| and mvt.date_mouvement
in (select max(mvt2.date_mouvement)
from e_mouvement_transformateur mvt2
where transfo.id = mvt2.e_transformateur ) |
Et là je sèche... ou dois-je ajouter le "(+)" ?