温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SQL中索引怎么用

发布时间:2021-12-13 11:50:53 来源:亿速云 阅读:1516 作者:小新 栏目:关系型数据库

小编给大家分享一下SQL中索引怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

1、概念
    是数据库对象,通过指针加速查询数据,减少磁盘IO
    类似书的目录
    自动使用和维护索引    --primary key 和unique列上自动创建

2、创建
    基本语法
         create index emp_ename_idx  on emp(ename);
    B树索引
        1)唯一索引,指键值不重复。SQL> create unique index empno_idx on emp1(empno);
        2)非唯一索引  SQL> create index empno_idx on emp1(empno);
        3)组合索引(Composite):基于两个或多个列的索引。 SQL> create index job_deptno_idx on emp1(job,deptno);
        4)反向键索引(Reverse):将字节倒置后组织键值。当使用序列产生主键索引时,可以防止叶节点出现热块现象。缺点是无法提供索引范围扫描。
            SQL> create index mgr_idx on emp1(mgr) reverse;
       5)函数索引(Function base):以索引列值的函数值为键值去组织索引  SQL> create index fun_idx on emp1(lower(ename));
       6)压缩(Compress):重复键值只存储一次,就是说重复的键值在叶块中就存一次,后跟所有与之匹配的 rowid 字符串。
             SQL> create index comp_idx on emp1(sal) compress;
       7)升序或降序( Ascending or descending):叶节点中的键值排列默认是升序的。
            SQL> create index deptno_job_idx on emp1(deptno desc, job asc);
    函数索引

3、重建、删除
    alter index ind_test_id rebuild online;
    drop index

4、不可用、不可见
    unusable 不可用
         alter index ind_test_id unusable;
         如需使用得重建:alter index ind_test_id rebuild;

    invisible 不可见
         alter index ind_test_id invisible;
        alter index ind_test_id visible;
         11g新特性,只对优化器不可见,但索引维护还是正常进行

5、索引监控(查看索引是否被使用)
     alter index pk_dept monitoring usage;
     select * from v$object_usage;
     alter index pk_dept nomonitoring usage;

    
6、注意事项
    SQL中索引怎么用

7、视图
    user_indexes
    user_ind_columns

以上是“SQL中索引怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

sql
AI