1对查询进行优化,应尽量避免全表扫描,尤其是数据量比较大的表,全表扫描是类似于select*fromXXX,尽量多加where子句,而且,应考虑在where及orderby涉及的列上建立索引。2.应尽量避免在where子句中对字段进行null值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:sele..
分类:
数据库 时间:
2016-08-14 14:47:34
阅读次数:
270
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描, 可以在 num 上设置默认值 0,确保表中 num 列没有 null 值,然后这 ...
分类:
数据库 时间:
2016-08-12 11:48:35
阅读次数:
198
转自:http://quentinxxz.iteye.com/blog/2149440 一、正常情况下,不应该有这种需求 首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的 ...
分类:
数据库 时间:
2016-08-12 01:14:23
阅读次数:
197
应尽量避免在where子句中使用or来连接条件,否则将导致引擎放弃使用索引而进行全表扫描,如:selectidfromtwherenum=10ornum=20可以这样查询:selectidfromtwherenum=10unionallselectidfromtwherenum=20union和unionall的区别是,union会自动压缩多个结果集合中的重复结果,而un..
分类:
数据库 时间:
2016-08-09 16:16:34
阅读次数:
184
1、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在 ...
分类:
数据库 时间:
2016-08-09 14:51:41
阅读次数:
212
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在nu ...
分类:
数据库 时间:
2016-08-09 13:38:38
阅读次数:
201
前言 索引是对数据库表中的一列或多列的值,进行排序的一种结构 ,使用索引可以快速访问数据库表中的特定信息。通俗理解,数据库索引就是现实生活中字典的索引。 索引的优缺点 优点: 索引可以避免全表扫描; 创建系统唯一性索引,可以保证每一行数据的唯一性; 大大提高数据检索的速度; 加快表与表之间的链接,特 ...
分类:
数据库 时间:
2016-08-09 08:10:21
阅读次数:
223
碰到一个问题,创建某张表字段索引后,重新收集统计信息后,应用程序还是走原来的执行计划,把应用程序执行的sql语句拿出来执行,走的是快速索引扫描,应用程序用的是绑定变量; 查看执行计划走的是全表扫描: 但是在plsql开发工具和sqlplus未使用绑定变量情形下SQL语句走的是索引全扫描,这时想到这可 ...
分类:
其他好文 时间:
2016-07-31 20:43:03
阅读次数:
264
转一位大神的笔记。 导致表的执行计划做全表扫描的原因: u SQL谓词列没有建相应的索引 u 谓词列建有相应的索引,但执行计划没有使用 Oracle不使用b*tree索引的情况大致如下 1:where条件中和null比较可能导致不使用索引 2:count,sum,ave,max,min等聚集操作时可 ...
分类:
其他好文 时间:
2016-07-24 11:46:47
阅读次数:
1547
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引 ...
分类:
数据库 时间:
2016-07-13 21:52:27
阅读次数:
226