mysql email能索引吗_10、MySQL索引
索引
索引,是数据库中专门用于帮助用户快速查询数据的一种数据结构。类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获取即可。30
10 40
5 15 35 66
1 6 11 19 21 39 55 100
MySQL中常见索引有:普通索引
唯一索引
主键索引
组合索引
1、普通索引
普通索引仅有一个功能:加速查询
创建表 + 索引create table in1(
nid int not null auto_increment primary key,
name varchar(32) not null,
email varchar(64) not null,
extra text,
index ix_name (name)
)
创建索引create index index_name on table_name(column_name)
删除索引drop index_name on table_name;
查看索引show index from table_name;
注意:对于创建索引时如果是BLOB 和 TEXT 类型,必须指定length。create index ix_extra on in1(extra(32));
2、唯一索引
唯一索引有两个功能:加速查询 和 唯一约束(可含null)create table in1(
nid int not null auto_increment primary key,
name varchar(32) not null,
email varchar(64) not null,
extra text,
unique ix_name (name)
)
创建唯一索引create unique index 索引名 on 表名(列名)
删除唯一索引drop unique index 索引名 on 表名
3、主键索引
主键有两个功能:加速查询 和 唯一约束(不可含null)
创建表 + 创建主键create table in1(
nid int not null auto_increment primary key,
name varchar(32) not null,
email varchar(64) not null,
extra text,
index ix_name (name)
)
OR
create table in1(
nid int not null auto_increment,
name varchar(32) not null,
email varchar(64) not null,
extra text,
primary key(ni1),
index ix_name (name)
)
创建主键alter table 表名 add primary key(列名);
删除主键alter table 表名 drop primary key;
alter table 表名 modify 列名 int, drop primary key;
4、组合索引
组合索引是将n个列组合成一个索引
其应用场景为:频繁的同时使用n列来进行查询,如:where n1 = 'alex' and n2 = 666。create table in3(
nid int not null auto_increment primary key,
name varchar(32) not null,
email varchar(64) not null,
extra text
)
创建组合索引create index ix_name_email on in3(name,email);
如上创建组合索引之后,查询:name and email -- 使用索引
name -- 使用索引
email -- 不使用索引
注意:对于同时搜索n个条件时,组合索引的性能好于多个单一索引合并。
mysql email能索引吗_10、MySQL索引相关推荐
- java怎么判断mysql中是否存在我们查找的索引_10张图告诉你,MySQL 是如何查找数据的?...
在我们日常生活中经常会涉及到查找某个东西的场景,就比如说在一个学校里吧,我们想找出个子"最高的10个"同学,或者想查找姓名是"张三"的同学,又或者是查找学号是& ...
- mysql 是如何利用索引的_10 分钟搞明白 MySQL 是如何利用索引的!
一.前言 在MySQL中进行SQL优化的时候,经常会在一些情况下,对MySQL能否利用索引有一些迷惑. 譬如: MySQL 在遇到范围查询条件的时候就停止匹配了,那么到底是哪些范围条件? MySQL ...
- MySQL数据库学习【第九篇】索引原理与慢查询优化
一.介绍 1.什么是索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语 ...
- mysql explain详解_数据库mysql(1)——B+TREE索引原理
一.B+Tree索引详解 1.什么是索引? 索引:加速查询的数据结构. 2.索引常见数据结构: #1.顺序查找: 最基本的查询算法-复杂度O(n),大数据量此算法效率糟糕. #2.二叉树查找(bina ...
- mysql怎么查看索引情况_mysql 查看索引使用情况
mysql 查看索引使用情况 这是以读为主的线上库 root@read 02:28:07>show status like 'Handler_read%'; +-------–+---+ | V ...
- mysql 索引 简书_MySQL 索引
索引用于快速查找具有特定列值的行.如果没有索引,MySQL必须从第一行开始,然后读取整个表以查找相关行.表越大,成本越高.如果表中有相关列的索引,MySQL可以快速确定要在数据文件中间寻找的位置, ...
- mysql select不走索引_避免写出不走索引的SQL, MySQL
在MySQL中,并不是你建立了索引,并且你在SQL中使用到了该列,MySQL就肯定会使用到那些索引的,有一些情况很可能在你不知不觉中,你就"成功的避开了"MySQL的所有索引. 现 ...
- mysql索引优化分析_MySQL索引优化与分析(重要)
建表SQL CREATE TABLE staffs ( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR (24) NULL DEFAULT '' COM ...
- MySQL基础(二十八)索引优化与查询优化
都有哪些维度可以进行数据库调优?简言之: 索引失效.没有充分利用到索引--索引建立 关联查询太多JOIN (设计缺陷或不得已的需求)--SQL优化 服务器调优及各个参数设置(缓冲.线程数等)---调整 ...
最新文章
- ASP.NET MVC Bundles 用法和说明(打包javascript和css)
- node 进阶 | 通过node中如何捕获异常阐述express的特点
- 不仅搞定“梯度消失”,还让CNN更具泛化性:港科大开源深度神经网络训练新方法
- PIManager V1.0 Release -[2007-06-05]
- 2的负x次幂图像_数学| NO.2,3 函数 T15
- MYSQL--浅析索引
- php模拟远程提交get 、post 实例函数
- 苹果又遭集体诉讼,网友拍手:干得漂亮......
- 课节3: 图游走类模型1-deepwalk与node2vec
- unity 3d换装之 SkinMeshRenderer
- java消息头_java中怎么进行头消息校验
- 国内免费汉语语料库-NLP
- 分析微信小程序生成二维码接口报错41030: invalid page hint
- 正向代理和反向代理的区别
- DEDECMS专题制作
- 延迟队列实现30分钟订单自动过期失效
- android查ip地址,安卓手机查看IP地址的两种方法, 二、进入手机状态
- PWorld2016大会演讲PPT+访谈视频大合集,总有一款是你在找的!
- 【ChatGPT 中文版插件】无需注册体验 ChatGPT 的攻略
- SOLIDWORKS Manage 2022 版本集成插件
热门文章
- I00004 贝尔三角形(解法二)
- matlab 构建数据集实用 api
- TensorFlow 实战(一)—— 交叉熵(cross entropy)的定义
- 【读书笔记】—— 西方人文社科经典
- 辨异 —— 机器学习概念辨异、模型理解
- 【辨异】 —— 带宽与宽带
- numpy tricks(一)—— 多维数组的阈值化处理
- Web 服务器错误代码
- .xsession-errors:openConnection: connect: No such file or directory cannot connect to brltty at :0
- 群辉服务器根目录新建文件夹,群晖 synology NAS 存储创建存储空间的方法