视图是从一个或几个已经存在的表中抽取部分属性列组成一个新的虚拟表,等因而先行一步的查询操做,而咱们调用的时候直接调用这个表就能够实现功能,减小了代码量。并且能重复调用。视图至关于一个封装好的代码,里面的SQL语句如指针通常直接指向真实表的某个位置,在建立好视图以后,咱们只要调用就OK了。(PS:真心跟WOW的宏同样的感受— —。)sql
语法 spa
建立指针
Create View view_name(column_name) AS Select column_name From table_name Where condition [with check option]
视图的据法中不能使用order by和distinct。code
建立视图的view_name后的(column_name)只能所有指定或者全省略。继承
若是指定,则此column_name能够随意定义,由于原本就是一张虚表。it
若是省略,则column_name 为视图中Select子句中的column_name代替。io
由于视图是从一个或几个已经存在的表中抽取部分属性组成的,因此视图应该继承一个或几个表的约束条件,table
即[with check option]。class
调用 语法
Select *From [view_name] Where condition
删除视图
DROP VIEW view_name CASCADE
主外键关系中,级联删除,即删除主表数据会自动删除从表数据,
在此表示删除视图view_name及由它导出的全部视图。