Bonjour,
Je voudrais savoir s'il est possible de faire une réelle jointure à gauche avec JPA.
j'utilise comme implémentation de JPA(2.1) EclipseLink
ma requête JPQL est la suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT y FROM YvsBaseArticles y LEFT OUTER JOIN  y.classe1 c1
le Sql généré est
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT t0.id AS a1, t0.ref_art AS a2, t0.designation AS a3, t0.categorie AS a4, t0.actif AS a5, t0.date_save AS a6, t0.date_update AS a7, 
t1.id AS classe
FROM classes_stat t1, articles t0 
WHERE (t1.id = t0.classe1)
au lieu de
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
SELECT t0.id AS a1, t0.ref_art AS a2, t0.designation AS a3, t0.categorie AS a4, t0.actif AS a5, t0.date_save AS a6, t0.date_update AS a7, 
t1.id AS classe
FROM articles t0 LEFT JOIN classes_stat t1 ON t1.id = t0.classe1
order by  t1.id
La conséquence immédiate de l'utilisation des table
Code : Sélectionner tout - Visualiser dans une fenêtre à part
FROM yvs_base_classes_stat t1,yvs_base_articles t0
et de la clause Where plutot qu'une jointure est que mon résultat ne contient pas les Articles qui n'ont pas de classe stat
Donc je voudrai savoir s'il y a un moyen de forcer le Sql généré à utiliser les Jointures
Merci d'avance pour votre aide