如何优化sql查询
2024-09-03 20:55:26
借鉴https://www.cnblogs.com/ssrstm/p/5753068.html和https://www.cnblogs.com/exe19/p/5786806.html
1. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2. 应尽量避免在 where 子句中对字段进行 null 值判断,应尽量避免在 where 子句中使用!=或<>操作符,应尽量避免在 where 子句中使用 or 来连接条件因为以上的查询会导致导致引擎放弃使用索引而进行全表扫描。
3. in 和 not in 也要慎用,否则会导致全表扫描。
4. SELECT子句中避免使用‘*’:
5. 尽量多使用COMMIT:只要有可能,在程序中尽量多使用COMMIT, 这样程序的性能得到提高,需求也会因为COMMIT所释放的资源而减少,COMMIT所释放的资源:
a. 回滚段上用于恢复数据的信息。
b. 被程序语句获得的锁。
c. redo log buffer 中的空间。
d. Oracle为管理上述3种资源中的内部花费。
6. 通过内部函数提高SQL效率
7. 避免在where 字句中使用参数,对字段进行表达式操作,对字段进行函数操作,“=”左边进行函数、算术运算或其他表达式运算,因为会导致引擎放弃使用索引而进行全表扫描。
8. 尽量避免使用游标
9. 删除重复记录
最新文章
- 用递归调用实现字符串反转(java版)
- Xcode6中如何去掉默认的Main.storyboard
- 【java】 获取计算机信息及Java信息
- linux 管道命令 竖线 ‘ | ’
- Server Develop (七) Linux 守护进程
- 微软IOC容器Unity简单代码示例1
- 11g RAC R2 体系结构---用户及用户组
- Java基础——I/O
- 笨方法学python 33课
- css 背景色渐变
- [Windows Azure] 使用 Windows Azure 快速搭建 Redis 服务器
- LinkedBlockingQueue简介
- 简简单单的Vue4(vue-cie@3.x,vue’Debug[调试],vue‘sHttp)
- spark优化设置
- 20180426 Linq to excel
- Containerpilot 配置文件示例
- 中心极限定理&;&;正态分布 随想
- C# 连接 IBM MQ
- jq左右按钮点击幻灯片
- java 执行bat批处理文件 并关闭cmd窗口
热门文章
- JavaScript简介和发展史,JavaScript组成和开发工具-乐字节
- ADO winform注册
- JDBC | 查询表数据行数
- java操作rabbitmq实现简单的消息发送(socket编程的升级)
- springMVC-RESTful支持
- mongodb的基本命令操作
- [译]Understanding ECMAScript6 对象
- 牛客网Java刷题知识点之什么是JSP的3大常用指令、JSP的6大哪些动作、JSP中include指令和include动作有什么区别
- [转][android][利用JNI技术在Android中调用、调试C++代码]
- 使用SpringCloud-Netflix