Mysql视图和分区表

本文详细介绍了MySQL中的视图和分区表。视图是一个虚表,提供数据抽象和安全性的功能,允许用户按特定方式查看数据。分区表则是将大表水平分割成多个更易管理的部分,提高查询效率。文章涵盖了视图的作用、基本使用,以及分区表的概述、类型(RANGE、LIST、HASH、KEY、COLUMNS)、子分区和性能考虑。
摘要由CSDN通过智能技术生成

Mysql视图和分区表

视图

​ 视图(View)是一个命名的虚表,由一个SQL查询来定义,可以当作表使用。与持久表不同的是,视图种的数据没有实际的物理存储。

作用

​ 主要用途是被用做一个抽象装置,程序不需要关心基础表的结果,只需按照视图定义来读取数据或更新数据。带来如下好处:

  • 提高重用性。例如需要经常查询某表中的部分数据。

    ​ --将查询的结果存为视图,不用每次再从基础表中进行条件查询。

  • 对数据库重构,不影响程序的运行

    ​ --对表的拆分或连接,直接用视图来标识新表的结构,不需要直接操作基础表

  • 提高安全性,对不同的用户设定不同的视图。

​ 用户可以对视图进行更新操作,本质就是通过视图的定义来更新基本表。可进行更新操作的视图称为可更新视图。

基本使用

创建

create view  视图名  as  select 字段名 from 表名;

在这里插入图片描述

删除

drop view 视图名[,视图名…];

重命名

Rename table 视图名 to 新视图名;

查看

show tables;

​ show tables;会将表和视图都显示出来。

​ 如果只显示基础表,可以通过information_sechma架构下的TABLE表来查询

select * from information_schema.tables where table_type='BASE TABLE' and table_schema=database();

​ 同样,所有视图的信息在information_schema.VIEWS下。

select * from information_schema.views where table_schema=database();

分区表

概述

​ 分区的过程是将一个表或索引分成多个更小、更容易管理的部分。就访问数据库的应用而言,从逻辑上看,只有一个表或者索引,但是在物理上这个表或索引可能由多个物理分区来组成。每个分区都是独立的对象,可以单出处理,也可以作为更大对象的一部分。

​ Mysq支持的分区类型为水平分区,不支持垂直分区。Mysql的分区时局部分区索引。

垂直分区:同一个表中的不同记录分配到不同的物理文件中。

水平分区:同一个表中的不同记录分配到不同的物理文件中。

全局分区:一个分区中即存放了数据又存放了索引。

局部分区:数据存放在各分区中,所有数据的所有存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值