两个SQL语句,性能相差如此大

用Hibernate开发的应用,使用是Oracle10g,使用的方言是org.hibernate.dialect.OracleDialect 数据到达360W的时候,分页查询比较慢,达到10S多,分析了自动生成的SQL,发现SQL格式如下: SELECT FROM (SELECT row_., ROWNUM rownum_ FROM (SELECT users.id,users.name FROM my.users users0_) row_) WHERE rownum_ <= 100 AND rownum_ > 10 将方言改为org.hibernate.dialect.Oracle10gDi生成的SQL是 SELECT FROM (SELECT row_., ROWNUM rownum_ FROM (SELECT users.id,users.name FROM my.users users0_) row_ where rownum <= 100 ) WHERE rownum_ > 10。 速度很快。