sql-server - 视图和使用 SELECT INTO 创建的表之间的主要区别?
问题描述
我知道视图只是一个保存的 SQL 查询,可以被视为一个虚拟表。但是,在我看来,使用 SELECT INTO 语句创建新表和创建视图之间没有太大区别。这两种方法之间的主要区别是什么?在什么情况下你会使用其中一种?
解决方案
让我们首先承认通过您所说的视图,您不是在谈论索引视图。因为这些实际上是在后台使用现有表实现的。所以,我们谈论的是非索引视图。
这两种方法非常不同——事实上,它们没有任何共同之处。这很奇怪,因为你们都提到:
- “查看 = 仅保存的 sql 查询”
- “进入=创建新表”
这不是矛盾吗?结果select into
实际上是一个表,一个视图不是。
不知道你为什么要问这个或你想要完成什么。根据我的经验,我使用 select into 快速创建逻辑临时表,这些表与原始表具有相同的列,而无需键入所有列。这种创建表的方法通常不如create table
命令和随后的插入,因为不能创建索引和其他东西 - 因此它用于临时查询或作为临时实体。
推荐阅读
- python - 我的代码正在处理字典列表,例如字符串 typeerror : TypeError: string indices must be integers
- python - AngularJS - Selenium - 如何获取选项标签值
- c# - 如何解决“无法建立 SSL 连接,请参阅内部异常。” 尝试下载 osu! 头像
- dart - 有没有办法转换未来
- > 列出
? - dji-sdk - DJI 可以分享支持 AndroidX 的计划吗?
- c++ - 获得接近 2 次幂数的快速方法(浮点数)
- php - 从 Woocommerce 中的优惠券使用中排除具有 2 个特定属性术语的变体
- laravel - 使用预加载将原始 SQL 查询转换为 Laravel Eloquent
- c - 如何正确使用宏的功能?
- r - R,tmap:在视图模式下更改标签