MySQL之视图

什么是视图

视图(View)本质上是一条被保存下来的 SELECT 查询语句。

本身不存储真实数据,没有物理磁盘文件,访问视图时会自动执行内部 SQL 并返回查询结果。视图依托原数据表生成,原表数据发生变化,查询视图拿到的数据同步变更。

视图创建成功后,使用者的使用方式和普通物理数据表完全一致,支持使用 SELECT 语句查询视图字段,无需重复编写多表联查、条件过滤、聚合统计等冗长 SQL,大幅简化日常查询工作。

视图尽量拿来用于查询!!!

创建视图

bash 复制代码
create view 视图名 as select 表达式

视图得存在大大得简化了日常查询工作

视图与原来表得关系

视图就是在原来的数据库里面有创建了一张表

视图得改变会影响原来的表

原来表发生变化也会影响视图的数据

删除视图

bash 复制代码
drop view 视图名;
分类 详细规则
创建规则 1. 定义语句禁止:SELECT INTO、临时表、FROM后嵌套子查询、LOAD DATA; 2. 库内视图名不能和数据表重名; 3. 视图列名必须唯一,重复字段需要手动起别名。
DML 增删改 1. 可增删改:单张基表来源,不含聚合、GROUP BY、DISTINCT、UNION、多表连接;基表非空无默认字段必须全部在视图中; 2. 不可增删改:多表联查、分组聚合、去重类视图; 3. CHECK OPTION:LOCAL 只校验当前视图 where 条件;CASCADED 连带上层嵌套视图条件一起校验。
相关推荐
snow@li18 小时前
HikariCP:高性能数据库连接池全景深入梳理
java·数据库
一个天蝎座的程序猿18 小时前
传统数据库迁金仓KES,空值问题差点让财务报表翻车
数据库
wWYy.19 小时前
Mysql:索引下推
数据库·mysql
风123456789~20 小时前
【Oracle专栏】ORA-02069: global_names 参数
数据库·oracle
ningmengjing_20 小时前
Redis 从入门到实战:Python操作全攻略
数据库·redis·python
隔窗听雨眠21 小时前
OceanBase旁路导入与自增主键冲突深度解析:原理、排查与解决方案
java·服务器·数据库
ZCBUS实时计算21 小时前
政务海量分库分表汇聚实战:基于 3 节点 ZCBUS 集群完成医保 10TB 数据实时整合
大数据·数据库·数据仓库·sql·dba·etl·政务
名不经传的养虾人21 小时前
从0到1:企业级AI项目迭代日记 Vol.81|工具调用前,先过一道审批门
数据库·人工智能·ai编程·ai工作流·企业ai
Databend21 小时前
Databend 产品更新:从 Spatial Index Join 到 Eval 数据管道
大数据·数据库·sql
数据知道21 小时前
SQL 注入从入门到精通:手工注入 + sqlmap 自动化
网络·数据库·sql·网络安全·自动化