数据量不大时:可以用
query.setFirstResult(start).setMaxResults(limit);
list=query.list();但是当数据量达到几百万时,比如100万条 如果分页时要查询第90万条时。他是这样的:
select top 900000 from 表名
这样就很慢哪位有什么好的方法没 不要存储过程的
query.setFirstResult(start).setMaxResults(limit);
list=query.list();但是当数据量达到几百万时,比如100万条 如果分页时要查询第90万条时。他是这样的:
select top 900000 from 表名
这样就很慢哪位有什么好的方法没 不要存储过程的
你要一次查90万条出来,能不慢吗?
用SQLQuery也行 不必非得获得Connection
hibernate性能很好的,我在很多大型系统中都用了,也遇到很多百万级的数据,楼主要搞清楚,你查的是第90万条记录,不是前90万条记录
sqlserver 2000 就支持 top
SELECT * FROM abc WHERE RowNumber between 10 and 20