【数据库知识扫描】 | SQL复习-中篇 第18课 使用视图

本文介绍了视图的概念、作用和使用场景,重点讲解了如何利用视图简化复杂的SQL查询,包括视图的创建、重用、数据格式化和过滤。视图是虚拟表,用于复用SQL语句、简化复杂操作、保护数据和更改数据表示。通过实例展示了视图在简化联结、重新格式化数据和过滤不想要的数据方面的应用。
摘要由CSDN通过智能技术生成

最近在跟一部番剧,地缚少年花子君,画风还挺舒服的,饭前饭后刚好一集。又焦虑又紧张,还是需要不断付出努力来获得自己的一点认可吧。所以今天跟的是视图:

这一课主要讲的是视图是啥,相关用法,使用场景,如何使用视图简化前面部分SQL操作。

目录

18.1 视图

① 为什么使用视图

② 视图的规则和限制

18.2 创建视图

① 利用视图简化复杂的联结

② 用视图重新格式化检索出的数据

③ 用视图过滤不想要的数据

④ 使用视图与计算字段


18.1 视图

视图是虚拟的表,跟存数据的表不一样,只包含使用动态检索数据的的查询。

DBMS支持问题,先说MySQL,从版本5起开始支持视图(我练习用的5.7版本),Access是不支持的,其他的具体看吧,

为了更好理解视图,走个例子就明白了:

 SELECT cust_name,cust_contact FROM Customers,Orders,OrderItems WHERE Customers.cust_id=Orders.cust_id AND OrderItems.order_num=Orders.order_num AND prod_id='RGAN01';

用来检索到订购了某种产品的顾客,任何需要这个数据的人都必须理解相关表的结构和如何创建查询和表的联结,并且检索其他产品的相同数据,必须修改最后的WHERE子句。

那么改动一下需求接着走,如果把整个查询包装成ProductCustomers的虚拟表,在来检索:

之所以没有得到和上面联结表查询相同结果是因为,视图的创建并没有提前做好。等我们后面学习了创建视图的语法再来回顾整个问题。

所有DBMS都支持视图创建。

接下来,我们可以了解一下?为什么使用视图?

① 为什么使用视图

换句话来说,在什么场景下,用到视图呢?书上给了总结,大致有这五种:

复用SQL语句

简化复杂的SQL操作。在编写查询后,可以方便地重用它而不必知道其基本查询细节。

□ 使用表的一部分而不是整个表。

保护数据。可以授予用户访问表的特定部分的权限,而不是整个表的访问权限。

更改数据格式和表示。视图可返回与底层表的表示和格式不同的数据。

创建视图以后,使用方式和前面对表操作相同,可SELECT、过滤排序,可联结(其他视图或表)、添加更新数据(略微有些限制

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值