没有Where条件下group by走索引
C:\Users\Administrator>sqlplus /nolog SQL*Plus: Release 11.1.0.7.0 - Production on 星期二 3月 23 21:42:27 2010 Copyright (c) 1982, 2008, Oracle. All rights reserved. SQL> conn /as sysdba
已连接。
SQL> create table t as select * from dba_objects; 表已创建。 SQL> insert into t select * from t; 已创建59262行。 SQL> / 已创建118524行。 SQL> / 已创建237048行。 SQL> / 已创建474096行。 SQL> / 已创建948192行。 SQL> commit; 提交完成。 SQL> alter session set "_gby_hash_aggregation_enabled"=false; 会话已更改。 SQL> set autot on
SQL> select owner,max(object_id) from t group by owner; OWNER MAX(OBJECT_ID)
------------------------------ --------------
ACMS 59869
DBSNMP 11991
EXFSYS 53969
XXXX 58952
ORACLE_OCM 11757
OUTLN 5724
PUBLIC 53918
SYS 59884
SYSTEM 12528
TSMSYS 5185
WMSYS 12520 已选择11行。 执行计划
----------------------------------------------------------
Plan hash value: 1476560607 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1679K| 48M| 7805 (5)| 00:01:34 |
| 1 | SORT GROUP BY | | 1679K| 48M| 7805 (5)| 00:01:34 |
| 2 | TABLE ACCESS FULL| T | 1679K| 48M| 7573 (2)| 00:01:31 |
--------------------------------------------------------------------------- Note
-----
- dynamic sampling used for this statement 统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
27669 consistent gets
0 physical reads
0 redo size
683 bytes sent via SQL*Net to client
416 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
11 rows processed SQL> create index t_idx on t (owner,object_id); 索引已创建。 SQL> select owner,max(object_id) from t group by owner; OWNER MAX(OBJECT_ID)
------------------------------ --------------
ACMS 59869
DBSNMP 11991
EXFSYS 53969
XXXX 58952
ORACLE_OCM 11757
OUTLN 5724
PUBLIC 53918
SYS 59884
SYSTEM 12528
TSMSYS 5185
WMSYS 12520 已选择11行。 执行计划
----------------------------------------------------------
Plan hash value: 1476560607 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1679K| 48M| 7805 (5)| 00:01:34 |
| 1 | SORT GROUP BY | | 1679K| 48M| 7805 (5)| 00:01:34 |
| 2 | TABLE ACCESS FULL| T | 1679K| 48M| 7573 (2)| 00:01:31 |
--------------------------------------------------------------------------- Note
-----
- dynamic sampling used for this statement 统计信息
----------------------------------------------------------
5 recursive calls
0 db block gets
27739 consistent gets
26 physical reads
0 redo size
683 bytes sent via SQL*Net to client
416 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
1 sorts (memory)
0 sorts (disk)
11 rows processed SQL> alter table t modify owner not null; 表已更改。 SQL> select owner,max(object_id) from t group by owner; OWNER MAX(OBJECT_ID)
------------------------------ --------------
ACMS 59869
DBSNMP 11991
EXFSYS 53969
XXXX 58952
ORACLE_OCM 11757
OUTLN 5724
PUBLIC 53918
SYS 59884
SYSTEM 12528
TSMSYS 5185
WMSYS 12520 已选择11行。 执行计划
----------------------------------------------------------
Plan hash value: 847563073 -------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1679K| 48M| 1790 (16)| 00:00:22 |
| 1 | SORT GROUP BY | | 1679K| 48M| 1790 (16)| 00:00:22 |
| 2 | INDEX FAST FULL SCAN| T_IDX | 1679K| 48M| 1558 (3)| 00:00:19 |
------------------------------------------------------------------------------- Note
-----
- dynamic sampling used for this statement 统计信息
----------------------------------------------------------
146 recursive calls
0 db block gets
5705 consistent gets
5601 physical reads
0 redo size
683 bytes sent via SQL*Net to client
416 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
5 sorts (memory)
0 sorts (disk)
11 rows processed SQL> alter table t modify owner null; 表已更改。 SQL> alter table t modify object_id not null; 表已更改。 SQL> select owner,max(object_id) from t group by owner; OWNER MAX(OBJECT_ID)
------------------------------ --------------
ACMS 59869
DBSNMP 11991
EXFSYS 53969
XXXX 58952
ORACLE_OCM 11757
OUTLN 5724
PUBLIC 53918
SYS 59884
SYSTEM 12528
TSMSYS 5185
WMSYS 12520 已选择11行。 执行计划
----------------------------------------------------------
Plan hash value: 847563073 -------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
-------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1679K| 48M| 1790 (16)| 00:00:22 |
| 1 | SORT GROUP BY | | 1679K| 48M| 1790 (16)| 00:00:22 |
| 2 | INDEX FAST FULL SCAN| T_IDX | 1679K| 48M| 1558 (3)| 00:00:19 |
------------------------------------------------------------------------------- Note
-----
- dynamic sampling used for this statement 统计信息
----------------------------------------------------------
146 recursive calls
0 db block gets
5705 consistent gets
0 physical reads
0 redo size
683 bytes sent via SQL*Net to client
416 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
5 sorts (memory)
0 sorts (disk)
11 rows processed SQL> select * from v$version; BANNER
-------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production
PL/SQL Release 11.1.0.7.0 - Production
CORE 11.1.0.7.0 Production
TNS for 32-bit Windows: Version 11.1.0.7.0 - Production
NLSRTL Version 11.1.0.7.0 - Production
转自《http://www.itpub.net/thread-1282845-1-1.html》
没有Where条件下group by走索引的更多相关文章
- mysql中关于关联索引的问题——对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引?
情况描述:在MySQL的user表中,对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引? 根据查询字段的位置不同来决定,如查询a, a,b a,b, ...
- varchar int 查询 到底什么情况下走索引?
一个字符类型的.一个int类型的,查询的时候到底会不会走索引,其实很多工作了几年的开发人员有时也会晕,下面就用具体事例来测试一下. 1. 准备工作 先准备2张表,以备后续测试使用. 表1:创建表te ...
- SQL IN 一定走索引吗?
摘要 IN 一定走索引吗?那当然了,不走索引还能全部扫描吗?好像之前有看到过什么Exist,IN走不走索引的讨论.但是好像看的太久了,又忘记了.哈哈,如果你也忘记了MySQL中IN是如何查询的,就来复 ...
- mysql数据库--explain(查询表是否走索引)各个字段含义
1.1 id列 数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 1.2 select_type列 常见的有: ◆ simp ...
- sql查询未走索引问题分析之查询数据量过大
前因: 客户咨询,有一个业务sql(代表经常被执行且重要),全表扫描在系统占用资源很高(通过ash报告查询得到信息) 思路: 1.找到sql_text,sql_id 2.查看执行计划 3.查询sql涉 ...
- Mysql数据库索引IS NUll ,IS NOT NUll ,!= 是否走索引
声明在前面 总结就是 不能单纯说 走和不走,需要看数据库版本,数据量等 ,希望不要引起大家的误会,也不要被标题党误导了. 1 数据库版本: 2 建表语句 CREATE TABLE s1 ( id IN ...
- Oracle中查询走索引的情况
1.对返回的行无任何限定条件,即没有where子句 2.未对数据表与任何索引主列相对应的行限定条件例如:在City-State-Zip列创建了三列复合索引,那么仅对State列限定条件不能使用这个索引 ...
- 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了
今天收到运营同学的一个 SQL,有点复杂,尤其是这个 SQL explain 都很长时间执行不出来,于是我们后台团队帮忙解决这个 SQL 问题,却正好发现了一个隐藏很深的线上问题. select a. ...
- 阿里面试题: (a,b,c)组合索引, 查询语句select...from...where a=.. and c=..走索引吗?
面试官:(a,b,c)组合索引,查询语句select...from...where a=.. and c=..走索引吗应聘者: 最佳左前缀法,如果索引了多列,要遵守最左前缀法则,否则索引失效 按最左前 ...
随机推荐
- 《Code Complete》ch.18 表驱动法
是什么 一种scheme,用表来做信息存取,代替逻辑语句(if/else) 为什么 简化逻辑语句,避免大量嵌套的 if/else 或者 switch/case 怎么用 三种访问表的方式 直接访问:将源 ...
- JMeter的定时器
JMeter的十种定时器 先明确一些概念:1)定时器是在每个sampler(采样器)之前执行的,而不是之后,不管这个定时器的位置放在sampler之后,还是之前.2)定时器是有作用域的:当执行一个sa ...
- 简单的as3操作xml
package { import flash.display.Sprite; import flash.events.Event; import flash.net.URLLoader; import ...
- java中单例类
class Singleton { private static Singleton instance; private Singleton(){} public static ...
- MFC常见问题解惑
MFC类的分类 1 Root: CObject : CObject2 Application Architecture Classes: CWinApp/CFrameWnd/... 3 Window, ...
- 百度编辑器Ueditor自动换行,添加<p>的问题
百度编辑器Ueditor其实蛮好用的,后来使用了一段时间发现,每次打开后又保存,发现都会往内容的前后都增加一个空白的<p></p>.刚开始以后是百度编辑器的问题,找了很长时间也 ...
- WWF3XOML方式创建和启动工作流 <第十篇>
一.XOML使用工作流的好处 通过Xoml方式使用工作流的好处在于,它能够不重新启动程序的情况下,仅仅通过配置xoml就能够实现改变工作流,非常灵活. 创建一个WinForm程序如下: 代码如下: n ...
- 【MySQL】MySQL锁和隔离级别浅析二 之 INSERT
最近在整理线上性能时,发现一台线上DB出现两个insert产生的死锁问题 ------------------------ LATEST DETECTED DEADLOCK ------------- ...
- python os模块sys模块常用方法
官方文档看这里 https://docs.python.org/3.5/library/os.html http://www.cnblogs.com/wupeiqi/articles/5501365. ...
- 跨域请求之JSONP 一
跨域请求之JSONP 一 跨域请求的方式有很多种, iframe document.domain window.name script XDomainRequest (IE8+) XMLHTTPReq ...