视图视图就是一张虚拟表,今天小编就来聊一聊关于视图能走索引吗 什么事是视图索引?接下来我们就一起去研究一下吧!

视图能走索引吗 什么事是视图索引

视图能走索引吗 什么事是视图索引

视图

视图就是一张虚拟表

表示一张表的部分或多找表的综合数据

它的结构和数据是建立在对表的查询的基础上

视图不存放数据

数据存放在视图所引用的原始表

一个原始表根据不同的用户需求可以创建不同的视图

好处

筛选表中的数据

防止未经许可的用户访问敏感数据

降低数据库的复杂程度

将多个物理的数据库抽象成一个逻辑的数据

语法

创建

create view 视图名 as select语句

使用:作为表使用

删除

drop view 视图名

视图使用的注意事项

- 视图中可以使用多个表 - 一个视图可以嵌套另一个视图 - 对视图数据进行添加、更新和删除操作直接影响所引用表中的数据 - 当视图数据来自多个表时,不允许添加和删除数据 - 使用视图修改数据会有许多限制,一般在实际开发中视图仅用作查询

索引

- 索引是一种有效组合数据的方式,为快速查找到指定记录 - 作用 - 大大提高数据库的检索速度 - 改善数据库性能 - MySQL索引按存储类型分类 - B-树索引:InnoDB、MyISAM均支持 - 哈希索引

常用索引类型

- 普通索引 - 基本索引类型 - 允许在定义索引的列中插入重复值和空值 - 唯一索引 - 索引列数据不重复 - 允许有空值 - 主键索引 - 主键列中的每个值是非空、唯一的 - 一个主键将自动创建主键索引 - 复合索引 - 将多个列组合作为索引 - 全文索引 - 支持值的全文查找 - 允许重复值和空值 - 空间索引 - 对空间数据类型的列建立的索引

索引的使用

- 创建索引

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name

ON table_name (column_name[length]…);

- 删除所有

DROP INDEX index_name ON table_name;

-- 删除表时,该表的所有索引同时会被删除

建索引的指导原则

- 按照下列标准选择建立索引的列 - 频繁搜索的列 - 经常用作查询选择的列 - 经常排序、分组的列 - 经常用作连接的列(主键/外键) - 请不要使用下面的列创建索引 - 仅包含几个不同值的列 - 表中仅包含几行

,