美文网首页
SQL 索引

SQL 索引

作者: Lrxc | 来源:发表于2019-09-30 15:33 被阅读0次

一 普通索引

  1. 3种创建方式
#创建索引方式一(上面创建表时直接指定)
CREATE TABLE test(
id int(10) PRIMARY KEY AUTO_INCREMENT,
name varchar(20) comment '姓名',
index i_name1 (name,age)
)
#创建索引方式二(创建)
CREATE INDEX i_name2 ON test(name); 
#创建索引方式三(修改表)
ALTER TABLE test ADD INDEX i_name3(name);
  1. 删除索引
    ···

显示索引

SHOW INDEX FROM test;

删除索引

DROP INDEX i_name1 ON test;
···
二 唯一索引
它与前面的普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。
创建方式同上,需要在 关键字 INDEX 前加上 UNIQUE

#创建索引方式二(创建)
CREATE UNIQUE INDEX i_name2 ON test(name); 

三 组合索引
1 创建
和普通索引一样,只不过列名会多几个(username,password)

CREATE INDEX i_name ON t_user(name,pwd); 

2 原则
最左优先原则:
index key on tablename(a,b,c)

select * from tablename where a=1 and ...有效
select * from tablename where b=1 and ...无效
select * from tablename where c=1 and ...无效

也就是说 索引顺序的第一个(a)必须和WHERE后的第一个查询条件(a=1)顺序一样,否则会失效

三 测试速度
3w条数据,不加索引大概7s,加上索引只需1s

相关文章

  • SQL Server数据库高级进阶之索引优化实战演练

    一、SQL Server索引优化本质 二、SQL Server索引存储机制 三、SQL Server索引类型分类 ...

  • MySQL正确使用索引

    需要解决的问题 知道sql为什么会走索引? 为什么有些sql不走索引? sql会走那些索引,为什么会这么走? In...

  • SQL语句的优化

    sql语句的优化:多使用共享语句 尽量使你的sql语句能够使用索引。怎样使sql语句能够使用到索引呢:当sql语句...

  • 索引设计指南

    Sql Server索引设计指南——脑图链接 参考资料:SQL Server 索引设计指南Clustered an...

  • MySQL 如何正确的使用索引

    学习索引,主要是写出更快的sql,当我们写sql的时候,需要明确的知道sql为什么会走索引?为什么有些sql不走索...

  • MySQl优化学习笔记(七)SQL优化简介

    一、SQL优化简介 1、我们平时说的SQL优化就是优化SQl语句和索引(通俗说就是使用什么样的SQL语句能够让索引...

  • mysql(普通索引-单列索引)

    普通索引命名规则 一般性索引用ind_开头,后面跟字段名 demo sql 创建表之前索引(对比demo sql)...

  • MySQL索引知多少

    mysql索引 总结关于mysql的索引,查询优化,SQL技巧等 1 索引类型 B-Tree索引 Hash索引 ...

  • 索引失效

    在编写sql语句时,一般都会用到索引来提升sql性能,但是有些sql语句使用索引是不生效的。 is null 和...

  • sql中强制使用索引

    在工作中遇到sql查询数据较慢时,用explain查看sql索引,发现添加的索引没有生效,那么可以使用强制索引 但...

网友评论

      本文标题:SQL 索引

      本文链接:https://www.haomeiwen.com/subject/obgmyctx.html