前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >MySQL【知识改变命运】12

MySQL【知识改变命运】12

作者头像
用户11319080
发布于 2024-10-30 00:53:08
发布于 2024-10-30 00:53:08
8801
代码可运行
举报
文章被收录于专栏:学习学习
运行总次数:1
代码可运行

1:什么是视图

  • 视图是一张虚拟的表
  • 视图是基于一个或者多个基表或者其他视图查询的结果集
  • 视图本身不占有物理内存,也不存储数据,只是根据查询执行来动态生成数据。
  • 用户对普通表的操作(查询,更新,删除)也可以在视图里面操作。

2:创建视图

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 语法
CREATE VIEW view_name [(column_list)] AS select_statement
create view//创建视图关键词
view_name// 视图名
column_list//视图包含的列
select_statement//视图所依赖的查询语句
  • 我们先查询一下表
  • 然后创建一个视图 这里我们要注意一个小问题,我们要防止在视图中出现名字重复

创建成功:

  • 视图用show tables 查询也在表集合里面
  • 我们可以用视图直接查询
  • 查询视图结构

使用视图(视图的好处)

2.1.隐藏敏感字段

  • 举例:查询⽤⼾的姓名和总分,(隐藏学号和各科成绩
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 使⽤真实表进⾏查询
select s.name, sum(sc.score) total from student s, score sc 
where s.id = sc.student_id
group by sc.student_id order by s.id;

# 如果使⽤真实表,在查询列表中随时可以加上学号字段

# 创建视图
create view v_student_total_points as
select s.id, s.name, sum(sc.score) total from student s, score sc 
where s.id = sc.student_id 
group by s.id order by s.id;
# 使⽤视图查询,只能查到学⽣姓名和总分,不能再添加查询字段

2.2.对外提供统一访问

3:视图和真实表进⾏表连接查询

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select * from v_student_total_points v, student s where v.id = s.id;

查询操作,使用视图和使用真实表一样的,有无视图是基于真实表的

4:修改视图数据

4.1:通过真实表修改数据,会影响视图

因为视图本质是依赖于真实表的

4.2:通过视图修改数据会影响基表

但是一下情况,无法使用修改视图

  • 修改真实表会影响视图,修改视图同样也会影响真实表
  • 以下视图不可更新:
  • 创建视图时使⽤聚合函数的视图
  • 创建视图时使⽤ DISTINCT
  • 创建视图时使⽤ GROUP BY 以及 HAVING ⼦句
  • 创建视图时使⽤ UNION 或 UNION ALL
  • 查询列表中使⽤⼦查询
  • 在FROM⼦句中引⽤不可更新视图

6:删除视图

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
语法:
drop view view_name;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-10-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
《Linux命令宝典:从初学者到专家的100个核心技巧》
猫头虎博主在此为大家带来了《Linux系统常用命令100条速记指南》。在Linux系统操作中,掌握基础命令对于优化工作效率至关重要。为了帮助初学者和老手们更快捷地掌握这些命令,这篇文章精心总结了Linux系统中的常用命令,并为大家提供了丰富的实例演示。本文涵盖了文件操作、系统查询、网络工具等多方面内容,同时为了搜索引擎优化,特地加入了Linux、速记、命令等 ,让大家更容易找到这篇宝典!
猫头虎
2024/04/09
1940
掌握Linux:常用命令大全
导言: Linux是一种广泛使用的操作系统,它在服务器领域和嵌入式系统中都非常流行。了解和掌握Linux的常用命令对于系统管理员、开发人员和任何使用Linux的人都是至关重要的。本文将深入介绍一些常用的Linux命令,帮助您更好地利用这个强大的操作系统。
海拥
2023/10/04
1.2K0
云课五分钟-09Linux基础命令实践-AI助力快速入门
以上就是Linux基础入门的主要内容。这些内容能够帮助你建立起对Linux系统的基本理解,并掌握基本的操作技能。
zhangrelay
2023/11/19
1770
云课五分钟-09Linux基础命令实践-AI助力快速入门
命令帮助类基础命令
常用命令缩写 缩写 | 全称 | 说明 — | — | — apt | Advanced Packaging Tool | 是Debian Linux发行版中的APT软件包管理工具。一般配合apt-get或者apt-update awk | Aho Weiberger and Kernighan | Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的Family Name的首字符。一种编程语言,用于在linux/unix下对文本和数据进行处理。 bash | Bourne Again SHell | 一种shell bg | BackGround | 用于将作业放到后台运行,使前台可以执行其他任务。该命令的运行效果与在指令后面添加符号&的效果是相同的,都是将其放到系统后台执行。 cal | CALendar | 用于显示当前日历,或者指定日期的日历。 cat | CATenate | “连接”,连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。 chgrp | CHange GRouP | 用来改变文件或目录所属的用户组。 chmod | CHange MODe | 用来变更文件或目录的权限。 chown | CHange OWNer | 改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。 cd | Change Directory | 切换工作目录 cp | CoPy | 将一个或多个源文件或者目录复制到指定的目的文件或目录 dd | Data Description | 用于复制文件并对原文件的内容进行转换和格式化处理。 df | Disk Free | 用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。 du | Disk Usage | 查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。 diff | DIFFerence | 在最简单的情况下,比较给定的两个文件的不同。 dpkg | Debian PacKaGe | Debian Linux系统用来安装、创建和管理软件包的实用工具。 ed | EDitor | 单行纯文本编辑器,它有命令模式(command mode)和输入模式(input mode)两种工作模式。 emacs | Editor MACroS | 是由GNU组织的创始人Richard Stallman开发的一个功能强大的全屏文本编辑器,它支持多种编程语言,具有很多优良的特性。(备注:vim大法好!!!) env | ENVironment | 用于显示系统中已存在的环境变量,以及在定义的环境中执行指令。 exec | EXECute | 用于调用并执行指令的命令。 fsck | File System Consistency checK, or fuck | 用于检查并且试图修复文件系统中的错误。 gawk | Gnu Aho Weiberger and Kernighan | grep | Gnu Regular Expression Print | (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 grub | GRand Unified Bootloader | 多重引导程序grub的命令行shell工具。 ifconfig | InterFace CONFIGuration | 被用于配置和显示Linux内核中网络接口的网络参数。 init | INITialization | Linux下的进程初始化工具 insmod | INStall Module | 用于将给定的模块加载到内核中。 ln | LiNk | 用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接。如果要创建符号连接必须使用”-s”选项。 ls | LiSt | 显示目标列表 lsmod | LiSt Module | 用于显示已经加载到内核中的模块的状态信息。 man | MANual | Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。一般戏称有问题找男人。。。 mkdir | MaKe DIRectory | 创建目录 mkfs | MaKe FileSystem | 用于在设备上(通常为硬盘)创建Linux文件系统。 mv | MoVe | 对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。 nano | Nano’s
全栈工程师修炼指南
2022/09/28
5550
命令帮助类基础命令
40 多个 Linux 命令初学者备忘单
掌握Linux命令对于初学者来说是至关重要的,它可以帮助您更好地管理和操作Linux系统。在本文中,我们将提供一个详细的备忘单,包含40多个常用的Linux命令,每个命令都附带了示例,以帮助您更好地理解和使用它们。
网络技术联盟站
2023/06/09
4650
40 多个 Linux 命令初学者备忘单
LINUX中常用操作命令
LINUX中常用操作命令 Linux简介及Ubuntu安装 常见指令 系统管理命令 打包压缩相关命令 关机/重启机器 Linux管道 Linux软件包管理 vim使用 用户及用户组管理 文件权限管理 ---- Linux简介及Ubuntu安装 Linux,免费开源,多用户多任务系统。基于Linux有多个版本的衍生。RedHat、Ubuntu、Debianaa 安装VMware或VirtualBox虚拟机。具体安装步骤,找百度。 再安装Ubuntu
Angel_Kitty
2018/04/09
1.5K0
LINUX中常用操作命令
史上最全Linux命令科普 | 常见命令的名称是怎么来的?
1 目录缩写 缩写 | 全称 | 说明 --- | --- | --- | /bin | BINaries | 二进制可执行命令 /dev | DEVices | 特殊设备文件 /etc | ETCetera | 系统管理和配置文件 /etc/fstab | FileSystem TABle | 文件/etc/fstab包含了静态文件系统信息,定义了存储设备和分区整合到整个系统的方式。mount 命令会读取这个文件,确定设备和分区的挂载选项。 /lib | LIBraries | 库文件 /mnt |
小小科
2018/05/02
1.2K0
史上最全Linux命令科普 | 常见命令的名称是怎么来的?
Shell学习——运维自动化
Shell是一种用于与操作系统内核进行交互的命令行解释器(command-line interpreter)。它是一种命令语言,提供了一种通过键入文本命令来执行操作的方式。Shell还可以解释和执行脚本文件,这些脚本文件包含了一系列按顺序执行的命令。
C3ting
2023/12/26
2140
Shell学习——运维自动化
centos常见的命令
CentOS是一款基于RHEL(Red Hat Enterprise Linux)的开源操作系统,广泛应用于服务器领域。掌握一些基本的Linux命令对于日常管理和维护CentOS系统至关重要。本文将介绍几个常用的CentOS命令,以及相关的问题、使用技巧和避免错误的方法。
Jimaks
2024/05/08
6850
Linux下的常用基本指令
推荐一个网站给想要了解或者学习人工智能知识的读者,这个网站里内容讲解通俗易懂且风趣幽默,对我帮助很大。我想与大家分享这个宝藏网站,请点击下方链接查看。 https://www.captainbed.cn/f1
鲜于言悠
2024/05/24
1200
Linux下的常用基本指令
做Java,谁还不会几个 Linux 个命令!
本文章盘点了 Linux 运维必备 150 个命令,请配合下面的网站使用。定位你需要使用的命令,然后去这个网站查询详细用法即可。
用户2242639
2021/06/29
5950
有什么事让你觉得在Linux上顺理成章,换到Windows上就令你费解?
很多时候linux安装软件只需要执行一条指令即可,而windows就相对比较麻烦.
初阶牛
2023/10/14
2020
有什么事让你觉得在Linux上顺理成章,换到Windows上就令你费解?
软件测试/人工智能|Linux常见面试问题讲解
现在行业对于测试工程师的要求越来越高,除了要会自动化测试,会数据库操作,现在对于linux命令的要求也越来越高了,因为很多时候,测试环境以及持续集成持续交付需要用到越来越多的Linux命令,本文就来给大家介绍一下面试常见的Linux问题以及基本概念。
霍格沃兹测试开发Muller老师
2023/12/15
1980
Xshell 和Xftp 得安装与使用以及常用得命令
第一个就是切换目录,查看目录下列表文件,查看文件内容 主要是这三个其他的我们可以用
斯文的程序
2019/11/07
2.4K0
Xshell 和Xftp 得安装与使用以及常用得命令
硬核!高频Linux命令大总结,建议收藏~
记得不久前跟大家大分享了一波个人在平时日常工作、学习、开发、写文字、做视频等过程中,一些好用高效的在线工具和网站,并且把自己的浏览器收藏夹书签离线文件都导出给大家了。
全栈程序员站长
2022/08/24
4900
硬核!高频Linux命令大总结,建议收藏~
Linux常用命令
Linux常用命令 常用指令 ls   显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent) cd 切换目录 touch 创建空文件 echo 创建带有内容的文件。 cat
Java帮帮
2018/03/15
1.3K0
Linux常用命令
Linux 基础入门:掌握必备的命令行技能
本博客介绍了Linux基础入门的必备命令行技能,共分为九个主题。首先,在命令行简介部分,解释了命令行的组成和结构,以及常用的命令行操作。接着,详细介绍了常用的文件和目录操作命令,包括ls、cd、mkdir、rm等,帮助读者熟悉文件和目录管理。第四部分涵盖了文件内容查看与编辑,介绍了cat和less命令以及vi编辑器的使用。在文件权限与用户管理部分,深入探讨了chmod、chown和useradd等命令,帮助读者理解文件权限和用户管理的重要性。系统信息查询与监控一节介绍了uname、df、top等命令,用于查看系统信息和资源使用情况。接着,通过网络命令与通信,解释了ping、ifconfig、netstat等命令,帮助读者进行网络通信测试和配置。在压缩与解压缩一节,介绍了tar、gzip和unzip命令,用于文件的压缩和解压缩。最后,在实用的命令技巧部分,列举了通配符的使用、历史命令调用和命令别名设置等实用技巧,帮助读者更高效地在命令行下工作。掌握这些技能和命令,读者将能够更好地操作和管理Linux系统,提高工作效率和系统安全性。
猫头虎
2024/04/08
6960
Linux 基础入门:掌握必备的命令行技能
Linux命令大总结,一篇就够了(建议新手收藏)
操作系统 Operating System 简称 OS ,是软件的一部分,它是硬件基础上的第一层软件,是硬件和其它软件沟通的桥梁。
嵌入式Linux内核
2022/09/23
1.2K0
Linux命令大总结,一篇就够了(建议新手收藏)
Linux常用命令面试题(linux面试题必会题目)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128887.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/28
7730
一篇文章带你了解服务器操作系统——Linux简单入门
Linux是由Linux Torvalds先生21岁时在芬兰赫尔辛基大学由C语言以及部分汇编语言创造出来
秋落雨微凉
2022/11/07
1.5K0
一篇文章带你了解服务器操作系统——Linux简单入门
相关推荐
《Linux命令宝典:从初学者到专家的100个核心技巧》
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文