MySQL视图

作者: 墨线宝 | 来源:发表于2021-02-14 20:31 被阅读0次

原文链接http://zhhll.icu/2021/%E6%95%B0%E6%8D%AE%E5%BA%93/%E5%85%B3%E7%B3%BB%E5%9E%8B%E6%95%B0%E6%8D%AE%E5%BA%93/MySQL/MySQL%E8%A7%86%E5%9B%BE/

MySQL视图

视图的概念

视图是一种虚拟存在的表,行和列的数据来自于定义的视图的查询中使用的表,并且是在使用视图中动态生成的,只保存sql逻辑,不保存数据

应用场景

  • 多个地方使用同样的查询结果
  • 该查询结果使用的sql语句较为复杂

视图

创建视图

#语法结构
create view 视图名
as 查询语句

create view my_view as select s.name as student_name,c.name as class_name from student s join class c on s.classid = c.id;

#查看视图  此时视图里只有两个字段
desc my_view;
+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| student_name | varchar(20) | NO   |     | NULL    |       |
| class_name   | varchar(20) | NO   |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+

使用视图查询

#注意:查询时只可以使用视图中的字段进行查询
select * from  my_view where student_name = '张三';

修改视图

有两种方式修改视图

方式一:有则修改,没有则创建

create or replace view 视图名
as 查询语句

方式二:

alter view 视图名 as 查询语句

删除视图

drop view 视图名,视图名,...

视图中数据更新

在使用简单地查询语句作为视图时,可以对视图进行增删改操作,而且对视图的操作也会同样使数据表完成相应的变化

但是包含以下特点的视图不允许更新

  • 分组函数、distinct、group by、having、union、union all
  • 常量视图
  • select中包含子查询
  • join语句(可以update但是不可以insert和delete)
  • 数据来自于一个不可更新的视图
  • Where 子句的子查询引用了from子句中的表

由于本身的博客百度没有收录,博客地址http://zhhll.icu

相关文章

  • mysql高级:视图、事务、索引

    # mysql高级:视图、事务、索引 * 视图 * 事务 * 索引 * 账户管理 * 主从 ## 1.视图 动态抽...

  • MySQL--索引

    MySQL索引 查看索引 创建索引 创建唯一索引 创建主键索引 删除索引 删除主键 MySQL视图 创建视图 删除...

  • mysql视图,触发器,存储过程优缺点及应用分析

    mysql视图,触发器,存储过程优缺点及应用分析 视图 mysql使用较少,是sql server和orcale使...

  • 数据库

    一、MySQL中视图与表的区别 1.1 MySQL中视图和表的区别以及联系 视图是已经编译好的SQL语句,是基于S...

  • MySQL数据库基本操作(上)

    史上最简单的 MySQL 教程>>>MySQL运行机制原理&架构>>>触发器视图(上)视图(下)数据备份与还原(上...

  • 14 MySQL 视图

    MySQL 视图 [toc] 视图概述 视图介绍 什么是视图 虚拟表 内容与真实的表相似,有字段有记录 视图并不在...

  • MySQL视图

    什么是视图 视图(View)是一种虚拟存在的表。其内容与真实的表相似,包含一系列带有名称的列和行数据。但是视图...

  • MySQL视图

    mysql视图 视图View是一个虚表,它由一个sql查询来定义,可以当做表使用。与持久表不同的是,视图中的数据没...

  • Mysql 视图

  • MySQL视图

    1、视图简介 -> 视图(view)是存在数据库中虚拟的表(只是结构没有数据,数据来源于其他表)-> 访问视图,相...

网友评论

    本文标题:MySQL视图

    本文链接:https://www.haomeiwen.com/subject/ajcuxltx.html