`
txf2004
  • 浏览: 6918425 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

索引

 
阅读更多

索引:就是一个列表,包含索引字段的值和相应的页码定位。

索引关键字进行了排序。查询时可以通过索引,提供查询速度。

书上的目录相似

表上查询:全表扫描

结构:Btree 根节点 中间节点 叶节点

索引的优点:提供查询速度。

缺点:占磁盘空间

会降低写的速度。(插入,更新,删除)

什么时候键索引:如果表主要是提供查询,那么在经常查询的字段上建立索引。

索引分类:

1.普通索引

create index 索引名

on 表名(字段名,。。。)

create index index_name

on xs(姓名);

2.唯一性索引:在一个表上可以创建多个,索引值不能重复。允许有空值

create unique index 索引名

on表名(字段名,。。。)

3.主键:primary key 在一个表上只能创建一个主键,主键字段不能出现重复值,

不允许为空。

4.全文索引

create fulltext index 索引名

on 表名(字段名,。。。)

通过修改表结构添加索引。

alter table 表名

add index 索引名(索引字段,。。。)

查看索引:show index from 表名

删除索引:drop index 索引名 on 表名

索引的创建:

1.表已经建好了:

1 createindex 索引名 on 表名(字段名,。。);

2) alter table 表名 addindex 索引名(字段名,。。。);

2.在建表的同时创建索引

create table abc

(id int primary key,

name varchar(10),

index ind_name(name));

create table abc1

(id int ,

name varchar(10),

primary key(id),

index ind_name(name));

索引的删除:

1.drop index 索引名 on 表名

2.alter table 表名

drop index 索引名

要求:在xs表的姓名字段上创建唯一性索引。

查看索引

输入记录验证唯一索引

删除索引。

1.普通索引(INDEX

这是最基本的索引类型,它没有唯一性之类的限制。创建普通索引的关键字是INDEX

2. 唯一性索引(UNIQUE

这种索引和前面的普通索引基本相同,但有一个区别:索引列的所有值都只能出现一次,即必须是唯一的。创建唯一性索引的关键字是UNIQUE

3. 主键(PRIMARY KEY

主键是一种唯一性索引,它必须指定为“PRIMARY KEY”。主键一般在创建表的时候指定,也可以通过修改表的方式加入主键。但是每个表只能有一个主键。

4. 全文索引(FULLTEXT

MySQL支持全文检索和全文索引。在MySQL中,全文索引的索引类型为FULLTEXT。全文索引只能在VARCHARTEXT类型的列上创建,并且只能在MyISAM表中创建。它可以通过CREATE TABLE命令创建,也可以通过ALTER TABLECREATE INDEX命令创建。对于大规模的数据集,通过ALTER TABLE(或CREATE INDEX)命令创建全文索引要比把记录插入带有全文索引的空表更快。

另外,当表类型为MEMORYHEAP时,除了BTREE索引,MySQL还支持哈希索引(HASH)。使用哈希索引,不需要建立树结构,但是所有的值都保存在一个列表中,这个列表指向相关页和行。当根据一个值获取一个特定的行时,哈希索引非常快。

分享到:
评论

相关推荐

    ORACLE重建索引总结

    4、索引高度:索引高度是指由于数据行的插入操作而产生的索引层数,当表中添加大量数据时,oracle将生成索引的新层次以适应加入的数据行,因此,oracle索引可能有4层,但是这只会出现在索引数中产生大量插入操作的...

    分区索引,本地索引,全局索引的区别

    oracle 分区索引,本地索引,全局索引的区别

    sql server 重新组织和重新生成索引

    SQL Server 重新组织和重新生成索引 在 SQL Server 中,索引的碎片可能会对查询性能产生影响,因此需要对索引进行维护。SQL Server 2005 提供了重新组织和重新生成索引的功能,以修复索引碎片。 重新组织索引 ...

    倒排索引处理文档

    倒排索引(英语:Inverted index),也常被称为反向索引、置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。 ...

    python基础教程:pandas DataFrame 行列索引及值的获取的方法

    pandas DataFrame是二维的,所以,它既有列索引,又有行索引 上一篇里只介绍了列索引: import pandas as pd df = pd.DataFrame({'A': [0, 1, 2], 'B': [3, 4, 5]}) print df # 结果: A B 0 0 3 1 1 4 2 2 5 行索引...

    MySQL数据库:创建索引.pptx

    创建索引 数据索引 课程目标 理解 —— 创建索引的语法; 掌握 —— 在已有表上创建索引的方法; 掌握 —— 在修改表时添加索引的方法; 掌握 —— 在创建表时创建索引的方法。 创建索引 使用CREATE INDEX语句创建...

    索引介绍聚集索引和非聚集索引

    关于索引的介绍,以及b+树结构图,两种索引性能比较,索引优化建议

    Python DataFrame 设置输出不显示index(索引)值的方法

    在输出代码行中,加入“index=False”... 您可能感兴趣的文章:Python将DataFrame的某一列作为index的方法pandas将DataFrame的列变成行索引的方法python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)Py

    SQL Server 2000数据库中如何重建索引

    在SQL Server 2000中,如果要用一个步骤重新创建索引,而不想删除旧索引并重新创建同一索引,则使用CREATE INDEX语句的DROP_EXISTING子句可以提高效率。这一优点既适用于聚集索引也适用于非聚集索引。以删除旧索引...

    hbase创建二级索引

    public class IndexBuilder3 extends Configured{ public static class MapperIndex extends TableMapper,Put>{ private String tableName; private String columnFamily;...// 该列对应的索引表名字

    简单例子理解主键,索引,聚集索引,复合索引,非聚合索引

    一、 创建主键(主键=主键索引=聚集索引) 主键是什么? 答:拿主键可以唯一确定一条数据,它和物理存储排序一致,不能为空,一个表只能有一个。 原本没有创建的主键的表在磁盘上存储为: Id=0;username=username0;sex...

    SQL Server 索引结构及其使用(聚集索引与非聚集索引)

    SQL Server 索引结构及其使用(聚集索引和非聚集索引)的区别与实例讲解,提高查询速度。

    视图和索引的创建和使用实验报告.pdf

    视图和索引的创建和使用实验报告 视图是一种虚拟表,基于一个或多个表的数据,可以通过视图来简化复杂的查询操作,提高数据的安全性和可维护性。本实验报告主要介绍了视图的创建、修改、使用和索引的创建、使用等...

    XML数据索引技术

    对XML数据建立有效的索引,是左右XML数据处理性能的重要因素.深入地讨论了目前XML索引 技术的研究现状,将XML索引技术分为两大类:节点记录类索引(本身还可以分为3个小的类型)和结构摘要类 索引.根据XML数据查询...

    基于给定的文档生成倒排索引的全部源码

    本系统源码是个人原创文章系列,程序员编程艺术第二十六章:基于给定的文档生成倒排索引的编码与实践的整个工程源码 look:http://blog.csdn.net/v_july_v/article/details/7109500 windows下VS2010,linux环境下皆...

    数据库 索引及优化

    数据库 索引 优化 数据库索引好比是一本书前面的目录,能加快数据库的查询速度。 例如这样一个查询:select * from table1 where id=44。如果没有索引,必须遍历整个表,直到ID等于44的这一行被找到为止;有了索引...

    SQL实验六:索引和数据完整性的使用[定义].pdf

    SQL实验六:索引和数据完整性的使用[定义] 本实验主要介绍了索引和数据完整性的使用。索引是数据库中的一种数据结构,它可以提高查询的效率,而数据完整性是指数据库中数据的正确性和一致性。 一、索引的使用 ...

    MySQL-数据库-索引详解

    MySQL 索引包括普通索引、惟一性索引、全文索引、单列索引、多列索引和空间索引。 #### 普通索引 创建普通索引时,不附加任何限制条件。可以创建在任何数据类型上,其值是否唯一和非空由字段自身的完整性约束条件...

    国家开放大学 形考答案 mysql 实验训练4:视图和索引的构建与使用

    本资源为 MySQL 实验训练第四课,主要涵盖视图和索引的构建与使用。实验目的是基于已有的汽车用品网上商城数据库 Shopping,理解视图和索引的概念和作用,练习视图的基本操作,包括视图的建立、视图的查询、视图的...

    MySQL 主键与索引的联系与区别分析

    索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。下面是主键和索引的一些区别与联系。 1. 主键一定是唯一性索引,唯一性索引并不一定就是主键。 所谓...

Global site tag (gtag.js) - Google Analytics