`
yunmoxue
  • 浏览: 289350 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

mysql 添加索引 添加多列索引 删除索引

 
阅读更多

语法

 

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
    [USING index_type]
    ON tbl_name (index_col_name,...)

 

例子:

添加单列索引

 

CREATE INDEX part_of_name ON customer (name);

 

添加多列索引

CREATE INDEX part_of_name ON customer (name,age,sex); 

删除索引

alter table customer drop index part_of_name;

 

 

常用的就这3句了..

另外还有两点:

 

1. 给指定列的前几个字符做索引..

比如有的时候一列数据前几个字母都一样. 下边的例子是给name的前10个字符做索引.

 

CREATE INDEX part_of_name ON customer (name(10));

 

2. using btree

"

 

部分储存引擎允许在创建索引时指定索引类型。index_type指定语句的语法是USING type_name。不同的储存引擎所支持的type_name值已显示在下表中。如果列有多个索引类型,当没有指定index_type时,第一个类型是默认值

存储引擎

允许的索引类型

MyISAM

BTREE

InnoDB

BTREE

MEMORY/HEAP

HASH, BTREE

"

 

CREATE INDEX id_index USING BTREE ON lookup (id);

 

分享到:
评论

相关推荐

    mysql添加索引.pdf

    总结来说,正确地添加和管理MySQL索引是提高数据库性能的关键,但同时也需要注意平衡索引带来的好处和潜在的问题。理解索引的工作原理、选择合适的索引类型以及定期维护和调整,是每个数据库管理员和开发人员必备的...

    Mysql数据库索引创建、索引删除、索引失效场景详解

    索引的失效场景包括:更新或删除索引列,使用不带索引的全表扫描操作,使用`SELECT *`而不是明确列出索引列,使用`NOT IN`、`<> ALL()`或`NOT EXISTS`等操作,以及在`WHERE`子句中使用了函数或表达式。此外,索引也...

    MySQL Innodb 索引原理详解

    主键索引是基于主键列构建的B+树索引,其中每个叶子节点存储完整的行记录。主键索引提供了最快的访问速度,因为主键通常是自增ID或类似的数据类型,能够均匀分布。 ##### 2.2 非主键索引 非主键索引通常指的是次级...

    MySQL创建索引,查看以及删除

    5. 复合索引(Composite Index):由多个列组成的索引,按列的顺序进行排序。 创建索引的基本语法如下: ```sql CREATE INDEX index_name ON table_name (column_name); ``` 对于复合索引: ```sql CREATE ...

    mysql索引导出删除

    首先,让我们了解什么是MySQL索引。MySQL中的索引是一种特殊的数据结构,它为数据库表中的数据提供了快速访问的途径。常见的索引类型包括B-Tree(默认)、Hash、R-Tree和Full-text等。B-Tree索引是最常见的一种,...

    mysql的索引优化

    2. **唯一性索引**:索引列的所有值都必须是唯一的。创建方式与普通索引类似,但需使用`UNIQUE`关键字: - 创建索引:`CREATE UNIQUE INDEX <索引名> ON 表名 (列名列表);` - 修改表添加索引:`ALTER TABLE 表名 ...

    mysql存储与索引技术

    在索引优化方面,最左前缀原则是一个关键概念,这意味着复合索引只能按照索引创建时列的顺序部分使用,例如,INDEX(A, B, C)可以用于 WHERE A = x 或 WHERE A = x AND B = y 的查询,但不能单独用于 WHERE B = y 或 ...

    mysql中创建各种索引的语句整理.pdf

    Mysql中创建各种索引的语句...添加多列索引 ) mysql>ALTER TABLE `table_name` ADD INDEX index_name (`column1`, `column2`, 、where条件列 、排序列或者分组列 、主键本身就是索引,无需再次添加

    mysql多条件索引

    在创建多列索引时,应考虑索引列的选取和顺序。如果新索引是现有多列索引的最左前缀,那么就没有必要单独为前面的列创建索引,因为这不会提供额外的性能提升。 举例来说,如果我们有一个名为`people`的表,包含`...

    MySql索引详解,索引可以大大提高MySql的检索速度

    单列索引,即一个索引只包合单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。 创建索引时,你需要确保该索引是应用在SQL查询语的条件(一般作为WHERE 子句的条件)实际上,索引...

    mysql 索引与执行计划

    2. **唯一索引**:确保索引列中的值是唯一的,但允许值为空。 3. **复合索引**:包含多个列的索引,可用于同时基于多个字段进行查询。 4. **聚簇索引(聚集索引)**:这是一种特殊的数据存储方式,通常与主键相关联...

    MySQL 索引最佳实践

    本文将深入探讨MySQL索引的最佳实践,旨在为开发者和数据库管理员提供实用指南。 ### 理解索引的重要性 索引的存在主要是为了加速数据库中的数据访问速度。在没有索引的情况下,数据库必须遍历整个表来查找特定的...

    MySQL索引 聚集索引

    MySQL索引 聚集索引 如果你想了解MySQL索引查询优化,你首先应该对MySQL数据组织结构、B-Tree索引、聚集索引,次要索引有一定的了解,才能够更好地理解MySQL查询优化行为。这里主要探讨MySQL InnoDB的聚集索引。

    MySQL索引最佳实践

    ### MySQL索引最佳实践 #### 一、理解MySQL索引的重要性 索引是数据库性能优化中最常用也是最重要的手段之一。合理的索引设计可以显著提高查询效率,减少服务器资源的消耗。在MySQL中,索引的选择与配置对于开发...

    MySQL索引分析和优化.pdf

    2. **唯一性索引**:与普通索引类似,但要求索引列的值必须唯一。 - 创建唯一索引:`CREATE UNIQUE INDEX <索引名> ON tablename (列名列表);` - 修改表添加唯一索引:`ALTER TABLE tablename ADD UNIQUE [索引名]...

    Mysql-索引原理分析

    例如,选择合适的索引类型、合理设计主键、以及考虑是否需要为辅助列创建非聚集索引,都是数据库设计时需要考虑的问题。在实际应用中,应根据查询模式和数据量来调整索引策略,以达到最佳的性能效果。同时,索引的...

    MySQL唯一索引重复插入数据解决方案总结.docx

    这种情况下,MySQL 会报一个 Duplicate entry 的错误信息,表示不能在索引列上重复插入值。 处理这种情况可以从业务代码和 MySQL 层面两方面进行处理。在业务代码中,可以根据错误信息来做具体的处理。同时也可以让...

    MySQL索引类型大汇总

    唯一索引与普通索引类似,唯一的区别是索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。可以通过以下三种方式创建唯一索引: * 创建索引:`CREATE UNIQUE INDEX indexName ON mytable...

Global site tag (gtag.js) - Google Analytics