Using the SQL Profiler the Hibernate 4 trick appears to be obvious: It just loads all data up to the requested page thus only uses TOP. If you set first-result := 90 and max-result := 30, it will translate this into TOP 120 and the driver then discards the first 90 rows. This way, paging gets slower the further down you go, but at least it works. |