当前位置:网站首页>索引笔记【】【】
索引笔记【】【】
2022-08-10 05:32:00 【hagong9】
目录
索引引入
在查询海量的数据需要花费大量的时间,要减少响应时间,就要用到索引。
CREATE INDEX 索引名 on 表名(列名)-- 表示这个表的某列创造一个索引
在创建玩索引后,该表的文件大小会变大:索引本身会占用空间
创建索引后使用同样的查询语句进行查询,处理的速度会大大变快。
创建索引后只对创建了索引的列的查询数据有影响,其他没创建的该慢还是慢
索引机制原理
比如有个学生表,在没有索引时执行查找id = 6 的操作,会对全表进行扫描,逐条对比。
如果创建索引,会生成一个二叉树,如上,将大大减少了查询次数,这就是索引查询数独快的原因
索引指令
-- 查询emp 表有没有索引
SHOW INDEXES from emp;
创建索引
创建索引,再次查询
-- 给emp 表的empno添加一个唯一索引
CREATE UNIQUE INDEX empno_index on emp(empno)
添加普通索引的方式有两种
-- 添加普通索引方式方式1
CREATE INDEX empno_index on emp(empno)、
-- 添加普通索引方式2
ALTER TABLE emp ADD INDEX empno_index(empno)
添加主键索引
第一种是之前给某列添加主键,那就是添加了主键索引
第二中和添加普通索引差不多,只是把index换成 primary key
ALTER TABLE emp ADD PRIMARY KEY empno_index(empno)
删除索引
-- 删除索引
-- 删除普通索引
DROP INDEX empno_index on emp
-- 删除主键索引
ALTER TABLE emp DROP PRIMARY KEY
修改索引
修改索引就是先把索引删除,再添加一个新索引
查询索引
查询索引有三种方式
-- 查询索引
-- 方法1
SHOW INDEX FROM emp
-- 方法2
SHOW INDEXES FROM emp
-- 方法3
SHOW KEYS FROM emp
创建索引练习
-- 1.创建一张订单表order (id号,数量).要求id号为主键,请使
-- 用2种方式来创建主键.(提示:为练习方便,可以是order1 , order2 )
-- 方法1 创建表时添加主键
CREATE TABLE order1 (
id INT PRIMARY KEY,
nums INT)
-- 方法2 通过alter add添加
CREATE TABLE order2(
id INT,
nums INT)
ALTER TABLE order2 ADD PRIMARY KEY id_index(id)
-- 创建一张特价菜谱表menu (id号,菜谱名,厨师,点餐人身份证,价
-- 格).要求id号为主键,点餐人身份证是unique请使用两种方式来创建unique.(提示:为练习方便,可以是menu1 , menu2、
-- 方法1 通过unique在创建表时添加
CREATE TABLE menu1(
id INT PRIMARY KEY,
menu_name VARCHAR(20) NOT NULL DEFAULT '',
cart_id INT UNIQUE,
price INT)
-- 方法2
CREATE TABLE menu2(
id INT PRIMARY KEY,
menu_name VARCHAR(20) NOT NULL DEFAULT '',
cart_id INT,
price INT)
CREATE UNIQUE INDEX cart_index on menu2(cart_id)
小结
边栏推荐
- Error when installing oracle rac 11g and executing root.sh
- 虚拟土地价格暴跌85% 房地产泡沫破裂?依托炒作的暴富游戏需谨慎参与
- Interface debugging also can play this?
- PCL点云滤波
- 链读好文:热加密存储与冷加密存储有什么区别?
- An article will help you understand what is idempotency?How to solve the idempotency problem?
- 自适应空间特征融合( adaptively spatial feature fusion)一种基于数据驱动的金字塔特征融合策略
- 第五次实验
- 常用工具系列 - 常用正则表达式
- cesium 旋转图片
猜你喜欢
随机推荐
智能合约和去中心化应用DAPP
深度学习中数据到底要不要归一化?实测数据来说明!
小程序wx.request简单Promise封装
R语言:修改chart.Correlation()函数绘制相关性图——完美出图
第六次实验
Read the excerpt notes made by dozens of lightweight target detection papers for literacy
25张炫酷交互图表,一文入门Plotly
手把手带你写嵌入式物联网的第一个项目
Mockito基本使用指南
YOLOv5 PyQt5(一起制作YOLOv5的GUI界面)
pytorch框架学习(9)torchvision.transform
链读 | 最新最全的数字藏品发售日历-07.28
链读推荐:从瓷砖到生成式 NFT
tinymce富文本编辑器
idm下载器如何使用 idm下载器使用技巧
Get started with the OAuth protocol easily with a case
私有化搭建个人网盘 NextCloud
训练集Loss收敛,但是测试集Loss震荡的厉害?
Error when installing oracle rac 11g and executing root.sh
图纸怎么折?(A0,A1,A2,A3の图纸如何折成A4大小)