CREATE INDEX 语句

CREATE INDEX 语句用于在表中创建索引。

在不读取整个表的情况下。索引使数据库应用程序能够更快地查找数据。

索引

您能够在表中创建索引,以便更加高速高效地查询数据。

用户无法看到索引,它们仅仅能被用来加速搜索/查询。

凝视:更新一个包括索引的表须要比更新一个没有索引的表花费很多其它的时间,这是因为索引本身也须要更新。

因此,理想的做法是只在经常被搜索的列(以及表)上面创建索引。

SQL CREATE INDEX 语法

在表上创建一个简单的索引。同意使用反复的值:

CREATE INDEX index_name
ON table_name (column_name)

SQL CREATE UNIQUE INDEX 语法

在表上创建一个唯一的索引。

不同意使用反复的值:唯一的索引意味着两个行不能拥有同样的索引值。

CREATE UNIQUE INDEX index_name
ON table_name (column_name)

凝视:用于创建索引的语法在不同的数据库中不一样。因此。检查您的数据库中创建索引的语法。

CREATE INDEX 实例

以下的 SQL 语句在 "Persons" 表的 "LastName" 列上创建一个名为 "PIndex" 的索引:

CREATE INDEX PIndex
ON Persons (LastName)

假设您希望索引不止一个列。您能够在括号里列出这些列的名称,用逗号隔开:

CREATE INDEX PIndex
ON Persons (LastName, FirstName)

Oracle 语法:

CREATE UNIUQE | BITMAP INDEX <schema>.<index_name>

  ON <schema>.<table_name>

       (<column_name> | <expression> ASC | DESC,

        <column_name> | <expression> ASC | DESC,...)

    TABLESPACE <tablespace_name>

    STORAGE <storage_settings>

    LOGGING | NOLOGGING

    COMPUTE STATISTICS

    NOCOMPRESS | COMPRESS<nn>

    NOSORT | REVERSE

    PARTITION | GLOBAL PARTITION<partition_setting>

相关说明

  • UNIQUE | BITMAP:指定UNIQUE为唯一值索引。BITMAP为位图索引。省略为B-Tree索引。

  • | ASC | DESC:能够对多列进行联合索引,当为expression时即“基于函数的索引”

  • TABLESPACE:指定存放索引的表空间(索引和原表不在一个表空间时效率更高)

  • STORAGE:可进一步设置表空间的存储參数

  • LOGGING | NOLOGGING:是否对索引产生重做日志(对大表尽量使用NOLOGGING来降低占用空间并提高效率)

  • COMPUTE STATISTICS:创建新索引时收集统计信息

  • NOCOMPRESS | COMPRESS:是否使用“键压缩”(使用键压缩能够删除一个键列中出现的反复值)

  • NOSORT | REVERSE:NOSORT表示与表中同样的顺序创建索引。REVERSE表示相反顺序存储索引值

  • PARTITION | NOPARTITION:能够在分区表和未分区表上对创建的索引进行分区

该文为部分摘要。并又一次组织,原文地址:http://www.w3cschool.cc/sql/sql-tutorial.html 获取很多其它的信息

【数据库摘要】10_Sql_Create_Index的更多相关文章

  1. 【数据库摘要】5_Sql_IN

    IN 操作符 IN 操作符同意您在 WHERE 子句中查找多个值. SQL IN 语法 SELECT column_name(s) FROM table_name WHERE column_name ...

  2. 【数据库摘要】4_Sql_Like

    SQL LIKE 操作符 LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式. SQL LIKE 语法 SELECT column_name(s) FROM table_name WHERE ...

  3. 【数据库摘要】6_Sql_Inner_Join

    INNER JOIN 操作符 INNER JOIN keyword在表中存在至少一个匹配时返回行. SQL INNER JOIN 语法 SELECT column_name(s) FROM table ...

  4. 【数据库摘要】12_Sql_存储过程

    SQL 存储过程 存储过程创建语法: create or replace procedure 存储过程名(param1 in type,param2 out type) as 变量1 类型(值范围); ...

  5. 如何利用【百度地图API】,制作房产酒店地图?(下)——结合自己的数据库

    原文:如何利用[百度地图API],制作房产酒店地图?(下)--结合自己的数据库 摘要:应广大API爱好者要求,写了一篇利用自己数据库标点的文章…… -------------------------- ...

  6. MySQL学习——操作数据库

    MySQL学习——操作数据库 摘要:本文主要学习了使用DDL语句操作数据库的方法. 创建数据库 语法 create database [if not exists] 数据库名 [default] ch ...

  7. MVC系列2-Model

    上一篇我讲了ASP.MET MVC的基础概念,我相信从上一篇,我们可以知道MVC的执行过程.这一篇我们开始讲解Model.我们知道,在我们的应用程序中,大多时候是在遵循业务逻辑通过UI操作数据.所以这 ...

  8. Mongodb 笔记07 分片、配置分片、选择片键、分片管理

    分片 1. 分片(sharding)是指将数据拆分,将其分散存放在不同的机器上的过程.有时也用分区(partitioning)来表示这个概念.将数据分散到不同的机器上,不需要功能强大的大型计算机就可以 ...

  9. 【转】NHibernate入门教程

    开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo 摘要: 热衷于开源框架探索的我发现A ...

随机推荐

  1. java enum使用方法

    直接上手吧,注释都写清楚了 编写枚举类 /** * 可以使用接口或类包裹枚举元素,使其可以统一调用入口 */ public interface TestEnumIntfc { /** * 创建枚举对象 ...

  2. Vagrant安装配置

    转载自:https://my.oschina.net/u/3424381/blog/888205 Vagrant安装配置 实际上Vagrant只是一个让你可以方便设置你想要的虚拟机的便携式工具,它底层 ...

  3. eclipse显示代码行数

    最近做的手机APP正在进行最后一部分了,在一个类中估计要写上千行代码,来回的拉动滚动条太麻烦了,于是发现为什么我得eclipse不显示代码行数呢  其他C什么的编译器都显示的. 于是百度了一下,一下子 ...

  4. 云卡门禁安卓SDK_BLEDOOR_SDK_ANDROID_2016_12_15

    package com.bosk.bledoor.sdk; //sdk包的开门服务类,AndroidManifest.xml 必须注册 //<service //android:name=&qu ...

  5. Related concepts of testing

    根据是否知道源代码测试可以分为黑盒和白盒. 黑盒:功能测试. 白盒:知道源代码,要写测试代码. 根据测试的粒度. 方法测试: 单元测试: 集成测试: 系统测试: 根据测试的暴力程度. 压力测试:谷歌工 ...

  6. Kotlin入门(6)条件分支的实现

    上一篇文章介绍了字符串的相关操作,其中示例代码用到了if和for语句,表面上看,Kotlin对控制语句的处理与Java很像,可实际上,Kotlin在这方面做了不少的改进,所以本篇和下一篇文章就分别介绍 ...

  7. <转>通过反射获取Form/MenuStrip/ContextMenuStrip等列表

    private void button1_Click(object sender, EventArgs e) { treeView1.Nodes.Clear(); Assembly a = Assem ...

  8. ISP与DSP的区别【转】

    https://www.cnblogs.com/lifan3a/articles/5006760.html ISP 是Image Signal Processor 的简称,也就是图像信号处理器.而DS ...

  9. fedora 使用 vnc 远程 fedora 28 主机

    问题重述: 最近环境中需要使用 fedora 28 来进行远程桌面,于是就重新配置了一下vnc 在这里面做一下记录. 过程: yum 安装: 工作机上安装 vncviewer 远程主机上安装: vnc ...

  10. 由内省引出JavaBean的讲解

    IntroSpector--内部检查,了解更多细节--内省---JavaBean 一.JavaBean JavaBean是一种特殊的Java类,主要用于传递数据信息,这种java类中的方法主要用户访问 ...