当我们只使用SELECT INTO时,为什么需要创建视图?

时间:2013-02-20 23:21:41

标签: sql sql-server

为什么我们只需要使用select into就可以创建视图?

例如:

select table1.columnX,...,table2.columnY 
into newtable 
from table1,table2 

1 个答案:

答案 0 :(得分:3)

SELECT INTO在新表中创建查询结果的副本。这基本上是当时查询结果的固定快照,除非您构建机制以使结果保持最新(例如基表上的DML触发器)。

另一方面,视图根本不存储数据。*它只是一个查询,通常不是出于性能原因而使用,而是通过创建可重用模块来简化对底层数据的访问,也许还可以实现以某种方式的安全性(例如,对基础表拒绝SELECT并且仅在视图中公开某些列和/或行)。

* - 索引视图除外,它实现了结果。

另外,please don't use bad, bad, bad inner join syntax that doesn't specify INNER JOIN

相关问题