回头看看节2.6里的查询。假设你的应用对天气记录和城市位置的组合列表特别感兴趣,而你又不想每次键入这些查询。那么你可以在这个查询上创建一个视图,它给这个查询一个名字,你可以像普通表那样引用它。
CREATE VIEW myview AS SELECT city, temp_lo, temp_hi, prcp, date, location FROM weather, cities WHERE city = name; SELECT * FROM myview;
自由地运用视图是好的 SQL 数据库设计的一个关键要素。视图允许我们把表结构的细节封装起来,这些表可能随你的应用进化而变化,但这些变化却可以隐藏在一个一致的接口后面。
视图几乎可以在一个真正的表可以使用的任何地方使用。在其它视图上面再创建视图也并非罕见。