पेजिनेशन जुड़े हुए संग्रहों के साथ काम नहीं करता है क्योंकि यह उन सभी पंक्तियों की गणना करता है जो where
से संतुष्ट हैं विधेय (हाइबरनेट का इससे कोई लेना-देना नहीं है, यह है कि डेटाबेस कैसे काम करते हैं, उदाहरण के लिए Oracle rownum
)।
इसे दूर करने का सामान्य तरीका सबक्वेरी का उपयोग करना है, ताकि rownum
(या उपयोग किए गए डेटाबेस में समतुल्य) केवल एक तालिका की चयनित पंक्तियों पर लागू होता है (या उन तालिकाओं में शामिल होता है जो एक-से-एक संबंध में हैं)।
एचक्यूएल में:
select p from Parent p were p in (select c.parent from Child c where ...)
मानदंड समकक्ष इसी तरह से बनाया जा सकता है।