JPQL operatörlerinin IN ve ÜYE arasındaki fark nedir?IN ve JPQL operatörlerinin Üyeliği arasındaki fark nedir?
cevap
sorgulamak sağlanan değerleri tek değerli yol ifade (sizin varlığın kalıcı özniteliği) değeri (veya alt sorgu yoluyla getirilen) 'dir. testler OF
ÜYE sorgulamak sağlanan değer (veya ifade ile tanımlanır) sizin tarafındaki bazı koleksiyonunda değerlerin üyesidir.
en alttaki kullanmanızı sağlar örnek varlık:
@Entity
public class EntityA {
private @Id Integer id;
private Integer someValue;
@ElementCollection
List<Integer> listOfValues;
public EntityA() { }
public EntityA(Integer id, Integer someValue, List<Integer> listOfValues) {
this.id = id;
this.someValue = someValue;
this.listOfValues = listOfValues;
}
}
Ve aşağıdaki test verileri:
o someValue biri (0,1 olduğunu çünkü biz sonucunda a1 olsun aşağıdaki sorgu ileEntityA a1 = new EntityA(1, 1, Arrays.asList(4, 5, 6));
EntityA a2 = new EntityA(2, 2, Arrays.asList(7, 8, 9));
, 3). sorguda kullanma hazır bilgi üreten aynı sonucu (EntityA DAN WHERE a.someValue IN (0, 1, 3) bir SEÇ). 7 listOfValues içinde değerlerden biridir çünkü sonuç olarak a2 elde aşağıdaki sorgu ile
TypedQuery<EntityA> queryIn = em.createQuery(
"SELECT a FROM EntityA a WHERE a.someValue IN :values", EntityA.class);
queryIn.setParameter("values", Arrays.asList(0, 1, 3));
List<EntityA> resultIn = queryIn.getResultList();
:
TypedQuery<EntityA> queryMemberOf = em.createQuery(
"SELECT a FROM EntityA a WHERE :value MEMBER OF a.listOfValues", EntityA.class);
queryMemberOf.setParameter("value", 7);
List<EntityA> resultMemberOf = queryMemberOf.getResultList();
(parametre olarak toplama dahil) Bu işlevsellik, JPA 2.0 tarifnamede tanımlandığı gibidir ve değildir Hazırda bekletme özelliğine sahip (yukarıdaki kod, örneğin EclipseLink ile çalışır).
IN
testler değer değişmezleri veya sorgu parametreleri açık bir sabit listenin biri olup olmadığını. bir değer, yani aslında nesne modelinin bir parçası olan bir toplama JPA toplama mevcut olup olmadığını
MEMBER OF
testleri. testler İÇİNDE
- 1. Python'da {} ve [] arasındaki fark nedir?
- 2. $ arasındaki fark nedir? ve PowerShell
- 3. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 4. Fark() arasındaki fark nedir mustache.js
- 5. os.path.isdir() kullanırken './' ve '../' arasındaki fark nedir?
- 6. R içinde `=` ve `<-` arasındaki fark nedir?
- 7. Python'da (1,) ve (1) arasındaki fark nedir?
- 8. arasındaki fark nedir?
- 9. Java arasındaki fark nedir
- 10. ActiveSupport'ta mattr_accessor ve cattr_accessor arasındaki fark nedir?
- 11. bir cmd dosyası ve% %% arasındaki fark nedir?
- 12. MyFaces'da Gelişim ve Üretim arasındaki fark nedir?
- 13. arasındaki fark nedir?
- 14. BOOST_CHECK_CLOSE ve BOOST_CHECK_CLOSE_FRACTION arasındaki fark nedir?
- 15. Etag ve Expires başlığı arasındaki fark nedir?
- 16. arasındaki fark nedir?
- 17. Bu işlevler arasındaki fark nedir?
- 18. app.doScript ve $ .evalFile arasındaki fark nedir?
- 19. gVim ve gVim arasındaki fark nedir?
- 20. isAlpha ve isLetter arasındaki fark nedir?
- 21. Control.Enter ve Control.GotFocus olayları arasındaki fark nedir?
- 22. .got ve .got.plt bölümü arasındaki fark nedir?
- 23. AutomationProperties.AutomationID ve AutomationProperties.Name arasındaki fark nedir?
- 24. Android'de getDir ve getFilesDir arasındaki fark nedir?
- 25. uint ve System.UInt32 arasındaki fark nedir?
- 26. PropertyChangeListener ve VetoableChangeListener arasındaki fark nedir?
- 27. XSS'de IDREF ve IDREFS arasındaki fark nedir?
- 28. Cacerts ve keystore arasındaki fark nedir?
- 29. GPLv2 ve GPLv3 arasındaki fark nedir?
- 30. VarIsEmpty ve VarIsEmptyParam işlevleri arasındaki fark nedir
bir hazırda belirli bir şey, ama İÇİNDE burada koleksiyonları ile çalışır ... ama üyesi zaten daha uygun görünüyor eğer bilmiyorum. IN kullanarak, bir sağlayıcı olarak JPA ile bir sağlayıcısını kullanarak –
kullanmadı. ÜYE OF kullanmak zorunda kaldı. – Amalgovinus