DBQs优化方案
发布时间
阅读量:
阅读量
数据库查询优化策略
1.合理使用索引
数据库服务器在访问数据时通常采用两种方式:①通过索引获取数据,即索引扫描;②读取表中所有页面,即表扫描。
当对某张表进行查询时,若返回的行数占全表总行数的10%至15%,使用索引可以显著提升查询效率。然而,若查询涉及全表40%以上的行数,则采用表扫描的方式效率更高。
关于索引使用的通用原则如下:
- 在常用于过滤条件或查询频率较高的字段上创建索引;
- 对SQL语句中频繁用于GROUP BY、ORDER BY操作的字段建立索引;
- 对于取值较少的字段无需创建索引,例如性别字段;
- 避免为经常访问的列创建索引;
- 用于连接操作的列(如主键或外键)应建立索引;
- 在经常访问的多个列上创建复合索引,但需注意复合索引的排列顺序应依据使用频率来确定。
2.书写高效的SQL语句
(1) 尽可能减少使用带有否定逻辑的操作符和函数,因为它们容易引发全表扫描且存在出错风险。可将包含NOT、<>、!=等否定逻辑的条件表达式转换为等价的正向逻辑表达式。
(2) 提取字段时应只获取所需部分,避免使用“select *”的形式。在数据量较大的情况下,影响查询性能的主要因素并非数据查找本身,而是物理I/O操作带来的开销。
(3) 尽量避免使用LIKE、EXISTS、IN等标准表达式,这
全部评论 (0)
还没有任何评论哟~
