2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > Oracle数据库order by排序查询分页比不分页还慢问题解决办法

Oracle数据库order by排序查询分页比不分页还慢问题解决办法

时间:2020-07-26 02:53:29

相关推荐

Oracle数据库order by排序查询分页比不分页还慢问题解决办法

简单说下问题,有一个JDBC的查询SQL,分页查询语句中有一个排序order by create_time,理论上来说JDBC查询已经是比较底层的技术了,没有像Hibernate、MyBatis那样又对JDBC进行了封装,效率肯定是最好的,可谁想,3w多条数据,竟然慢的要死,经常抛出超时异常

遇到问题之后,首先在网上搜罗资料

关于Oracle排序的:/s/blog_8604ca230100vro9.html

也找到一个排序分页很慢的帖子:/thread-1179246-1-1.html,好几年前的了,最终也没结贴

网上提到的各种解决办法,要么先分析SQL执行效率,要么建索引,但是根据经验来判断,一共就3w来条数据,怎么就会慢呢

仔细看了数据库中的数据,发现一个明显的问题,排序的字段create_time竟然有2w多条数据都是null值,终于找到原因了,没错,原因就是因为排序字段是相同的null值,分页之后查询就会很慢

找到原因,解决办法就简单了,把排序字段的null值赋值为流水时间即可~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。