Tablo1, tablo2 olarak adlandırılan iki tablo var.O tablolarda hiçbir alan yok. Bu iki tablo arasında bir ilişki yok. Gereksinimim tüm kayıtları istiyorum Tablo 2'de bulunmayan tablo1'de. Bu yüzden Kriter API'sini kullanarak bir sorgu yazdım. Ama doğru sonucu vermiyor. Bu JPA ve ölçüt API'sinde yeni olduğum için, herhangi birini yanlış yaptığım yeri işaret edebilirim. Aşağıdaki kodu kullanıyorum.jpa ölçütlerini kullanarak bir sorgu oluşturma api
CriteriaBuilder cb = mediationEntityManager.getCriteriaBuilder();
CriteriaQuery<Table1> cq = cb.createQuery(Table1.class);
Root<Table1> table1 = cq.from(Table1.class);
cq.select(table1)
Subquery<Table2> subquery = cq.subquery(Table2.class)
Root table2 = subquery.from(Table2.class)
subquery.select(table2)
cq.where(cb.not(cb.exists(subquery)))
TypedQuery<Table1> typedQuery = mediationEntityManager.createQuery(cq);
List<Table1> resultList = typedQuery.getResultList();
MySQL sorgu:
SELECT table1
FROM table1 table1
WHERE NOT EXISTS (SELECT table2
FROM table2 table2
WHERE table2.name = table1.name
AND table2.education = table1.education
AND table2.age = table1.age)
AND table1.name = 'san'
AND table1.age = '10';
yukarıda bahsedilen MySQL sorgusu JPA kriterleri API sorgu gerekir.
Ama bu tablolarda arasında veri ayırt nasıl belirtmek kriterler/sütun vb –
Merhaba ben içine ve mümkünse-ver eğer bakmak Question.Plz benim orijinal gerçek MySQL sorgusu veriyorum cevap verdiği için çok teşekkür Aynı mysql sorgu için jpa ölçütü api sorgu. – aaaa