Klauzula Eclipselink extend JOIN

Aktualny kod:

CriteriaQuery criteriaQuery = cb.createQuery(MinutisPreke.class);
Root<MinutisPreke> from = criteriaQuery.from(MinutisPreke.class);
Join<LankomumasDiena, MinutisPreke> ld = from.join("lankomumasDiena", JoinType.LEFT);
cb.and(cb.equal(ld.get("intervalas"), 7));

generuje następujące zapytanie:

SELECT COUNT(t0.pr_id) FROM preke AS t0 
LEFT OUTER JOIN lankomumas AS t1 
ON (t1.pr_id = t0.pr_id) 
WHERE (t1.intervalas = 7)

Jak dodać oświadczenie w LEFT OUTER JOINNA klauzula za pomocązapytanie o kryteria więc mój kod wygeneruje to zapytanie:

SELECT COUNT(t0.pr_id) FROM preke AS t0 
LEFT OUTER JOIN lankomumas AS t1 
ON (t1.pr_id = t0.pr_id) AND (t1.intervalas = 7)

EDYTUJ 1: Jeśli nie widzisz żadnej różnicy w pierwszym i drugim pytaniu, przeczytaj ten wątek:SQL join: gdzie klauzula a on klauzula

questionAnswers(1)

yourAnswerToTheQuestion