RSS
热门关键字:  下载  cms  模版  开源  dedecms
当前位置 :| 主页 > 站长学院 > 数据库 > Oracle >

A little test for index.

来源:Blog.ChinaUnix.net 作者:未知 时间:2006-09-14 Tag: 点击:
对表创建正确的索引可以加快查询速度。
一个小测试。


有一个表cpu_monitor有843240条记录,

SQL> desc cpu_monitor;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 SVRNAME                                            VARCHAR2(25)
 RECDDATE                                           DATE
 USR                                                NUMBER(10)
 SYS                                                NUMBER(10)
 WIO                                                NUMBER(10)
 IDLE                                               NUMBER(10)

SQL> select count(*) from cpu_monitor;

  COUNT(*)
----------
    843240

Elapsed: 00:00:06.47

对它以下面的SQL语句进行查询:select SVRNAME, count(*) counts from CPU_MONITOR  group by SVRNAME。
花去时间20.07秒

SQL> select SVRNAME, count(*) counts from CPU_MONITOR  group by SVRNAME
  2  ;

SVRNAME                       COUNTS
------------------------- ----------
app1                       6713
dev                        19297
***                        ****
*
*
*//省略

24 rows selected.

Elapsed: 00:00:20.07

对这个表建立索引:create index idx_cpu_monitor on CPU_MONITOR(SVRNAME);
不过这个索引却花了01:42.07分钟才建好。

SQL> create index idx_cpu_monitor on CPU_MONITOR(SVRNAME);

Index created.

Elapsed: 00:01:42.07

对它以下面的SQL语句进行查询:select SVRNAME, count(*) counts from CPU_MONITOR  group by SVRNAME。
花去时间07.41秒。

SQL> select SVRNAME, count(*) counts from CPU_MONITOR  group by SVRNAME
  2  ;

SVRNAME                       COUNTS
------------------------- ----------
app1                       6713
dev                        19297
***                        ****
*
*
*//省略
24 rows selected.

Elapsed: 00:00:07.41

好了,目的达到了。节省了时间是:12秒多。


最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
栏目列表