http://database.51cto.com/art/201108/284540.htm

SQL Server,Oracle,DB2索引建立语句的对比

2011-08-17 20:48 henrybai CSDN博客 我要评论(0) 字号:T | T

本文我们主要对SQL Server,Oracle,DB2上的索引建立语句进行了总结,并给出了创建各种索引的语句示例,希望能够对您有所收获!

AD:

我们知道,索引是用于加速数据库查询的数据库对象。原理就是减少查询的IO操作,从而达到加速的目的。本文我们主要对SQL Server,Oracle,DB2上的索引建立语句进行了总结,接下来就让我们一起来了解一下这部分内容。

索引的种类:

聚集索引:根据数据行的键值在表或视图中排序和存储这些数据行.

非聚集索引:具有独立于数据行的结构.

唯一索引:确保索引键不包含重复的值.

在SQL SERVER上建立的索引:

Create (NONCLUSTERED ) index ind_emp on emp(empno); 默认的就是建立非聚集索引。

exec sp_helpindex emp; 用于查看建立的索引,查询会自己使用可以用到的索引。

Create index ind_emp1 on emp(empno,ename); 可以在多个列上建立复合索引。

唯一非聚集索引:

Create unique index ind_sal on emp(sal);

重新生成索引:

Alter index ind_sal on emp rebuild;

Drop index ind_emp on emp; 删除索引。

Create CLUSTERED  index ind_emp on emp(empno); 建立聚集索引。

Create index ind_emp on emp(empno,ename);

注:相同列上可以多次索引。

唯一聚集索引:

Create unique clustered index ind_sal on f_emp(sal);

在DB2上建立索引:

非唯一索引:create index ind_empno on emp(empno);

Describe indexes for table emp; 查看所建立的索引。

唯一索引:create unique index ind_empno on emp(empno);

纯索引是DB2上的一种特殊的索引,(相当于ORACLE上的索引组织表):相对与一般索引。如下方式表中有俩个字段,其中字段1是唯一主键,字段2为数据,实际的查询中经常是select empno,ename from emp where empno=1122;CREATE UNIQUE INDEX IDX_ENAME ON emp (empno) INCLUDE(eNAME)。上述的语句的意思就是在empno上创建唯一索引,选择包含ename的数据,这些附加的数据将与键存储到一起。

Drop index ind_emp;

Create  index ind_emp on emp(empno) cluster;

Create index ind_emp on emp(empno,ename);

唯一聚集索引:

drop index ind_emp;-- 一个表上只能有一个聚集索引。

Create unique  index ind_sal on u_emp(sal) cluster;  建立聚集索引。

在ORACLE上建立索引:

SQL>  create index ind1 on emp(mgr); BTree索引。

SQL> create index ind2 on emp(deptno) reverse; 反向索引。

SQL> create index ind3 on emp(hiredate desc); 降序索引。

SQL> create bitmap index ind4 on emp(sal); 位图索引。

SQL>  create index ind5 on emp upper(job); 函数索引。

关于SQL Server,Oracle,DB2上的索引建立语句的总结就介绍到这里了,希望本次的介绍能够对您有所收获!

SQL Server,Oracle,DB2索引建立语句的对比相关推荐

  1. Sql Server, Oracle, db2等比較

    之前看到過這篇文章,那時候沒有blog就沒有存下來,等到有一天一朋友問我這個問題時我只是說了個大概,今天看到了貼出來,看看了. [@more@]1.选择一个好的数据库是非常重要的. 2.如何选择一个好 ...

  2. 数据库的三个范式(sql server ,oracle ,db2...)

    为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 在实际 ...

  3. 理解SQL SERVER中非聚集索引的覆盖,连接,交叉和过滤

    写在前面:这是第一篇T-SQL查询高级系列文章.但是T-SQL查询进阶系列还远远没有写完.这个主题放到高级我想是因为这个主题需要一些进阶的知识作为基础..如果文章中有错误的地方请不吝指正.本篇文章的内 ...

  4. CREATE VIEW SQL:在SQL Server中使用索引视图

    This is the fourth article in a series of learning the CREATE VIEW SQL statement. So far, we have do ...

  5. SQL Server基础之索引

     索引用于快速找出在某个列中有某一特定值的行,不使用索引,数据库必须从第一条记录开始读完整个表,直到找出相关的行.表越大,查询数据所花费的时间越多,如果表中查询的列有一个索引,数据库能快速到达一个位置 ...

  6. VB连接Sql Server,Oracle,SyBase,Access数据库操作实例

    - VB连接数据库是常用的操作 对于小型数据的存取是非常不错的.在设计时 对于不同数据的连接方式都不同 这里使用了ADODB连接字符串的方式来访问常见的数据库:Sql Server,Oracle,Sy ...

  7. SQL SERVER全面优化-------索引有多重要?

    想了好久索引的重要性应该怎么写?讲原理结构?我估计大部分人不愿意看,也不愿意花那么多时间仔细研究.光写应用?感觉不明白原理一样不会用.举例说明?情况太多也写不全....到底该怎么写呢? 随便写吧,想到 ...

  8. [转]SQL Server 2005 分区表实践——建立分区表(partition table)

    [鹏城万里] 发表于 www.sqlstudy.com SQL Server 2005 分区表实践--建立分区表(partition table) 问题:有一个订单表 Orders,要转换成分区表,以 ...

  9. SQL Server 表和索引存储结构

    SQL Server 表和索引存储结构 杜飞 在上一篇文章中,我们介绍了SQL Server数据文件的页面类型,系统通过96个字节的头部信息和系统表从逻辑层面上将表的存储结构管理起来,具体到表的存储结 ...

最新文章

  1. 数据仓库建设从0到1-一文带你深入建设金融数仓体系
  2. 使用OpenSSH远程管理Linux服务器
  3. js相对路径相关(比如:js中的路径依赖导入该js文件的路径)
  4. Tableau研学小课堂(part6)--集
  5. ubuntu解压和压缩文件
  6. 当年,兔子学姐靠这个面试小抄拿了个22k
  7. 矩阵的“之”字形打印
  8. [NAACL19]一个更好更快更强的序列标注成分句法分析器
  9. c# 字符串格式化为日期格式
  10. WCF中的服务契约(Continued)
  11. 微信到 Obsidian 2.0
  12. linux 检测screen,linux screen编程,自动监控并向screen发送命令
  13. 软件测试周刊(第33期):当夏季的光阴已然流逝
  14. 《月满西楼》——李清照
  15. 2022 我勇敢地走过
  16. 芯片设计“花招”已耍完?无指令集架构颠覆旧套路
  17. 4、编写程序,根据用户输入的数字转换成相应的中文的大写数字。例如,1.23转换为“壹点贰叁”。
  18. 冈萨雷斯《数字图像处理》学习总结及感悟:第一章 绪论 百闻不如一见
  19. java下载文件到服务器_java代码实现上传文件到文档服务器、下载文档服务器文件...
  20. 汽车车牌识别系统实现(二)--车牌定位+代码实现

热门文章

  1. 【Qt】Qt5.9连接MySQl5.7(亲自测试成功)
  2. python计算相关矩阵_Numpy使用大全(python矩阵相关运算大全)-Python数据分析基础2...
  3. python在电脑上的图标_在python scrip中嵌入图标
  4. 每天一道LeetCode-----将m × n矩阵按照顺时针螺旋顺序转化成一维数组
  5. MFC改变static text颜色
  6. 嵌入式Linux系统BSP的设计与实现
  7. 新博客地址: https://sanzo.top
  8. CF-1023F.Mobile Phone Network(并查集缩点)
  9. Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence (括号配对,前缀和)
  10. C++11 新的计时方法——std::chrono 大法好