• 索引


    MySQL支持6种索引:普通索引,唯一索引,全文索引,单列索引,多列索引,空间索引

    索引的创建有利有弊,可以提高查询速度,但过多的创建索引则会占据许多磁盘空间

    以下情况时候创建索引:

      经常被查询的字段,即在WHERE子句中出现的字段

      在分组的字段,即在GROUP BY子句中出现的字段

      存在依赖关系的子表和父表之间的联合查询,即主键或外键字段

      设置唯一完整性约束的字段

    以下不适合创建索引:

      查询中很少使用的字段

      拥有很多重复值的字段

    创建索引:mysql的存储引擎对每个表至少支持16个索引

    创建表时创建普通索引(普通索引即在创建索引时,不附加任何限制条件):

      INDEX|KEY 索引名 (属性名1 (长度) ASC|DESC)  INDEX index_de (de)

    在已经存在的表上创建普通索引:

      CREATE INDEX 索引名 ON 表名 (属性名 (长度) ASC|DESC)  CREATE INDEX index_de ON t_de (de)

    通过SQL语句ALTER TABLE创建普通索引:

      ALTER TABLE tablename ADD INDEX|KEY 索引名 (属性名 (长度) ASC|DESC)  ALTER TABLE t_de ADD INDEX index_de (de)

    自动索引:表会被系统自动创建索引,当表中某个字段设置主键或唯一完整性约束,系统会自动创建关联该字段的唯一索引

    手动索引:手动在表上创建索引

    唯一索引:创建索引时,限制索引的值必须是唯一的,在INDEX 前加上UNIQUE

      UNIQUE INDEX 索引名 (属性名 (长度) ASC|DESC)

    全文索引:主要关联在数据类型为CHAR,VARCHAR,TEXT的字段上,以便能够更加快速的查询数据了较大的字符串类型字段

      FULLTEXT INDEX 索引名 (属性名 (长度) ASC|DESC)

    多列索引:创建索引时,所关联的字段不是一个字段,而是多个字段,查询条件中只有使用了所关联字段的第一个字段,多列索引才会被使用

      INDEXT 索引名 (属性1 (长度) ASC|DESC, 属性2.。。)

    删除索引:

      DROP INDEX index_name ON table_name

      

  • 相关阅读:
    深入浅出了解OCR识别票据原理(Applying OCR Technology for Receipt Recognition)
    OCR技术浅探:基于深度学习和语言模型的印刷文字OCR系统
    Python 3.6.4 / win10 使用pip安装keras时遇到依赖的PyYAML安装出错
    简单http代理服务器搭建
    Socket之心跳包实现思路
    设计模式之访问者模式
    设计模式之责任链模式
    设计模式之策略者模式
    C#将.spl剥离成.emf文件格式
    设计模式之状态者模式
  • 原文地址:https://www.cnblogs.com/zawjdbb/p/7428623.html
Copyright © 2020-2023  润新知