博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle数据库order by排序查询分页比不分页还慢问题解决办法
阅读量:7209 次
发布时间:2019-06-29

本文共 397 字,大约阅读时间需要 1 分钟。

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

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

关于Oracle排序的:

也找到一个排序分页很慢的帖子:,好几年前的了,最终也没结贴

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

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

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

转载地址:http://parum.baihongyu.com/

你可能感兴趣的文章
springcloud微服务四:服务容错保护Hystrix断路器
查看>>
蓝点数据携手北京大数据产业人才实训基地培养大数据人才
查看>>
关于OpenSSH远程代码执行漏洞的通报
查看>>
String、StringBuffer、StringBuilder的区别
查看>>
Nginx的优化与防盗链
查看>>
RequireJS模块化编程详解
查看>>
Nginx/Apache下如何禁止指定目录运行PHP脚本
查看>>
python数据分析笔记——数据加载与整理
查看>>
面向大数据的时空数据挖掘
查看>>
从中国高铁的发展看安防企业的增长点
查看>>
贵阳高新区发布促进大数据技术创新十条政策措施
查看>>
安徽44.8万千瓦光伏扶贫项目安全接网
查看>>
IDEA 反代理工具 mac 命令行安装
查看>>
封装小程序wx.request请求
查看>>
SSH key使用总结
查看>>
vue 图片上传到阿里云oss
查看>>
vmware虚拟机三种网络模式详解
查看>>
《小程序切片》——微信小程序前端开发工具
查看>>
学习Promise基础及手写Promise
查看>>
NIO
查看>>