视图是数据库中一个非常简单的概念,写过SQL的人几乎大致了解视图。本文除了在回顾视图的本质及相关操作知识时,会重点阐述它蕴含的分层思想在数据分析工作中的作用。
1,视图的本质与作用
视图是一个数据库中的虚拟表,它的本质是SQL语句的集合。它的数据来源于SQL语句查询中所使用的基本表,每次使用视图时会动态生成最新的结果数据。
它的作用主要体现在两个方面:
(1)方便查询
如果需要将一个SQL查询频繁作为子查询使用时,将其封装成视图可以简化代码方便查询,每次直接调用视图就可以了。
(2)方便权限管理
如果工作中需要给某个用户提供某张表的某几列数据的查询权限,但又不希望其看到其它数据时,可以通过建立相应数据的视图,然后把视图权限开放就可以了。
另外,虽然也可以通过视图去更新基本表中的数据,但一般不建议这么做。
2,视图的操作
视图的操作包括创建视图、修改视图、删除视图、查看视图,这些操作只影响视图本身,不会影响对应的基本表。
(1)创建视图
create view view_name as select column_one,column_two from test_one where 1=1;
(2)修改视图
alter view view_name as select column_one from test_one where 1=1;
(3)删除视图
drop view view_name1,view_name2;
用户可以一次性删除一个或多个视图,前提是有该视图的删除权限
(4)查看视图
方法一
show table status like 'view_name';
方法二
select * from information_schema.views where table_name='view_name';
3,视图思想
视图所运用的思想是分层思想,也可将其看作是在基本表和结果表中间建立了中间表。这种思想的本质是为了解决从基本表到结果表的复杂计算问题,通过建立分层,就可以比较简单地得到结果表。
数据仓库就是完美运用分层思想的案例之一,神经网络中间的隐藏层也是对于分层思想的运用。在日常的数据分析工作中,分层思想也是一个非常重要的技巧。
4,结语
在数据分析工作,往往对于工具的使用并不是什么问题,经常碰到的问题反倒是如何能够便捷地得到我们想要的结果。分层思想就是对于实现结果的逻辑方法的一种辅助,它可以帮助我们把复杂的逻辑按步骤拆分成几个简单的逻辑,这些简单的逻辑不仅便于理解,也便于编程实现。
由此可见,在我们学习任何知识时,除了要聚焦于其知识点,也要将其思想发散于其它方面,做到活学活用、举一反三,如此才甚好!
参考:
https://baijiahao.baidu.com/s?id=1673708964577880291&wfr=spider&for=pc