学完第23节,楠神认为基本上对于PHP程序员来说可以完全使用MySQL了,常用的SQL语句都已学完。
再来用两节介绍余下的不常用的MySQL知识(只是楠神自己不常用,不代表这些知识不重要)。
视图
单词:view
视图可以看作是一个“临时存储的数据所构成的表”(非真实表),其实本质上只是一个select语句。只是将该select语句(通常比较复杂)进行一个“包装”,并设定了一个名字,其后就可以通过该名字并把该名字当作一个表来使用。
如果一个select语句比较复杂,又在多个页面需要使用它,则可以将它做成一个视图,方便使用。
又如果,某个数据表中的某些字段不想给别人看(不同公司之间的数据业务交换的时候),但另一个又需要给人看,此时也可以使用视图。
create view 视图名 [(列名1,列名2,...)] as 一条复杂select语句;
可以将select语句所取得的列重新命名,但也可以不重新命名,则使用select语句中的给定列名。
其实就是当作一个查询表来用(通常只用于select)
select * from 视图名 where 条件 order by .....。
视图名不能跟表名同名——因为他们都是隶属于数据库的“对象”;
视图的默认列名就是定义视图的时候的select语句中设定的列名;
视图定义的时候也可以指定自己的列名,但此时指定的列名数应该跟select语句的列名数相等;
select语句可以从多个表中取用数据,甚至还可以从其他视图中取数据
alter view 视图名 [(列名1,列名2,...)] as select语句;
drop view [if exists] 视图名;
总结:
视图就是这么简单,没太多内容,它就是一个虚拟的表。楠神在开发项目中并没有觉着它有什么优势,所以也就没用过视图,都是需要什么表就创建表。