Hibernate Kriterien äquivalent für die IN-Klausel in Unterabfragen?
Ich würde gerne übersetzen, eine Abfrage wie diese:
FROM Entity_1 obj
WHERE obj IN (FROM Entity2) OR
obj IN (FROM Entity3)
Hibernate-Kriterien bilden, und die offizielle Dokumentation von Hibernate ist nicht genug, weil es nicht sagen, wie die IN
- Anweisung.
Irgendeinen Hinweis?
InformationsquelleAutor edutesoy | 2011-09-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kriterien-API nicht eine Bestimmung zum hinzufügen einer weiteren Abfrage als eine Einschränkung.. ich denke, was @Niroshan Abayakoon zu sagen versuchte ist, dass Sie brauchen zum ausführen der Abfragen für die
IN
Klausel einzeln & fügen Sie das Ergebnis für dieRestrictions.in()
Zustand.dies würde zu erhalten, hibernate, zu prüfen, die Liste innerhalb der
IN
- Klausel.Seine immer besser fallback auf HQL in Situationen wie dieser.
das war ein Fehler... ich habe aktualisiert mein Antwort..
Immer noch problem, weil
Restrictions.in(String, String)
erwartet, dass ein propertyName als ersten parameter (und ich nehme an, Sie versuchen, pass Entity2.class oder "Entität", keiner von Ihnen funktionieren würde).hier
Entity2 and Entity3
werden als ein string, der den Namen der Eigenschaft.. das habe ich aktualisiert meine Antwort.Ja, aber wenn man sich meine ersten HQL-Abfrage gibt es nicht solche "someProperty" noch "anotherProperty". Ich kann nicht angewendet werden, diese Lösung zu übersetzen meiner Abfrage... bin ich Irre? Danke.
InformationsquelleAutor Anantha Sharma