一、order by排序很慢,排序字段加了索引,还是慢
问题:排序要用到PGA或临时表空间,PGA内存设置太小,排序的数据大于PGA,导致创建了临时表,最终查询效率低
优化方案:
1、加大PGA内存(因为这个是dba负责,所以暂时不考虑)
2、写个子查询只返回主键id,然后进行排序(内存占用小,可以利用内存排序),然后再左连接当前表返回对应的数据,效率大大提升
3、查询条件加索引
问题:排序要用到PGA或临时表空间,PGA内存设置太小,排序的数据大于PGA,导致创建了临时表,最终查询效率低
优化方案:
1、加大PGA内存(因为这个是dba负责,所以暂时不考虑)
2、写个子查询只返回主键id,然后进行排序(内存占用小,可以利用内存排序),然后再左连接当前表返回对应的数据,效率大大提升
3、查询条件加索引