• 九、MySQL之视图的介绍


    🙌作者简介:数学与计算机科学学院学生、分享学习经验、生活、 努力成为像代码一样有逻辑的人
    🌙个人主页:阿芒的主页
    👉推荐一款刷题、找工作神器 牛客网注册即可免费刷题

    🌅前言

    这一节介绍MySQL中的视图,内容主要包括视图的创建、修改、查看和删除、更新以及视图与表的对比等内容。

    🧑视图的介绍

    👉含义:mysql5.1版本开始出现的新特性。是一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的,只保存了sql逻辑,不保存查询结果。
    例如:舞蹈班和普通班级的对比
    👉应用场景:
    ① 多个地方用到同样的查询结果
    ②该查询结果使用的sql语句较复杂
    ③示例:

    CREATEVIEW my_v1
    AS
    SELECT studentname,majorname
    FROM students
    INNERJOIN major m
    ON s.majorid=m.majorid
    WHERE s.majorid=1;

    👦创建视图

    语法:
    create view 视图名
    as
    查询语句;

    🔶例:查询姓名中包含a字符的员工名、部门名和工种信息
    ①创建

    CREATE VIEW myv1
    AS
    SELETE last_name, department_name, job_title
    FROM employees e
    JOIN departments d ON e.department_id = d.department_id
    JOIN jobs j ON j.job_id = e.job_id;

    ②使用

    SELECT * FROM myv1 WHERE last_name LIKE ‘%a%’;


    🔵视图的好处

    • 重用sql语句
    • 简化复杂的sql操作,不必知道它的查询细节
    • 保护数据,提高安全性

    👨修改视图

    👍方式一:

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

    👍方式二:

    语法:
    alter view 视图名
    as
    查询语句

    😃删除视图

    语法:
    drop view 视图名,视图名,…;

    😊查看视图

    语法:
    desc 视图名;

    😉更新视图

    👍插入:

    INSERT INTO myv1 VALUES(‘张飞‘,’zf@qq.com’);

    👍修改:

    UPDATE myv1 SET last_name = '张无忌‘ WHERE last_name='张飞“;

    👍删除:

    DELETE FROM myv1 WHERE last_name = '张无忌’;


    注:视图的可更新性和视图中查询的定义有关系,以下类型的视图是不能更新的。

    1. 包含以下关键字的sql语句:分组函数、distinct、group by、having、union或者union all
    2. 常量视图
    3. select中包含子查询
    4. join
    5. from一个不能更新的视图
    6. where子句的子查询引用了from子句中的表

    🤷‍♂️视图和表的对比

    创建语法的关键字是否实际占用物理空间使用
    视图create view只是保存了sql逻辑增删改查,一般不能增删改
    create table保存了数据增删改查
  • 相关阅读:
    【CF1693C】Keshi in Search of AmShZ(类dijkstra)
    如何使用git-credentials来管理git账号
    BUUCTF reverse wp 61 - 65
    React 学习系列: 类组件生命周期方法
    迈瑞医疗,用科技创新解构医疗器械全球法则
    微积分小感——3.简单积分
    【牛客刷题】带你在牛客刷题第二弹(简单排序)
    911. 在线选举
    运行huggingface Kosmos2报错 nameerror: name ‘kosmos2tokenizer‘ is not defined
    一天快速掌握Mybaits[一]
  • 原文地址:https://blog.csdn.net/qq_43499848/article/details/126571867