如何在SQL中评估“创建视图”?

铁路迷

我有一个-也许简单-如何的问题create view,并select ... from viewname进行评估。我知道如何创建视图并使用它们,但是我必须以图形方式和我学校的文字说明这两个命令的过程。

好吧,我做了以下工作(目前我正在使用Microsoft SQL Server 2012,但这没关系,对吗?如果有区别,我也想对MySQL知道):

-- create a Schema for the test
create schema TEMP
go

-- create the view
create view TEMP.VLT as
select LNR,TNR,MENGE
from LTP.LTP
go

-- select the data from the view
select * from TEMP.VLT

Aview就像是选择查询的别名,它是在子查询中求值的,对吗?如果是这样,我是对的,那

select * from TEMP.VLT

是相同的

select * from (select LNR,TNR,MENGE from LTP.LTP) as VLT

我的意思是,我知道它给出了相同的结果,但是实际上是以相同的方式进行评估的,还是我错了?

谢谢您的回应!艾森巴芬

戈登·利诺夫(Gordon Linoff)

您的理解是非常正确的。首先,数据库之间的视图可能有所不同。特别是MySQL,有很多限制,例如该FROM子句中没有子查询但是,实际上,MySQL几乎按照您的描述进行操作。

一般而言,您具有正确的理解。视图的代码将合并到引用它的查询中。这是文档中的特定语言

当SQL语句引用非索引视图时,解析器和查询优化器将分析SQL语句和视图的源,然后将它们解析为一个执行计划。对于SQL语句,没有一个计划,而对于视图,没有一个单独的计划。

有一种称为“索引视图”的视图实际上可以实现数据。在这种情况下,该视图的代码不会实际运行,但查询中将使用结果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在javascript中评估对象创建

来自分类Dev

如何在视图WPF中创建视图

来自分类Dev

如何在Haskell中创建未评估的映射?

来自分类Dev

如何在Haskell中创建未评估的映射?

来自分类Dev

如何在活动中创建叠加视图

来自分类Dev

如何在OpenERP中创建日历视图?

来自分类Dev

如何在活动中创建叠加视图

来自分类Dev

如何在MySQL中创建此视图?

来自分类Dev

如何在SKScene中创建子视图?

来自分类Dev

如何在android中创建步骤视图

来自分类Dev

如何在标准sql中评估表达式?

来自分类Dev

如何在T-sql中实现等效的“短路评估”

来自分类Dev

创建视图时如何在SQL中删除小数点

来自分类Dev

如何在SQL Server中创建架构绑定的跨数据库视图

来自分类Dev

如何在sql表中查找唯一值并创建统一视图

来自分类Dev

如何在sql中创建一个带参数的视图

来自分类Dev

如何在Android中的视图分页器中创建滑块

来自分类Dev

如何在MVC 5中创建多租户视图结构

来自分类Dev

如何在QML中创建交错的网格视图?

来自分类Dev

如何在Phoenix Framework中创建全局视图?

来自分类Dev

如何在iOS中创建具有动态内容的视图?

来自分类Dev

如何在Swift中创建按钮以更改相机视图?

来自分类Dev

如何在Windows窗体中创建树视图菜单?

来自分类Dev

如何在Swift的子视图类中创建警报?

来自分类Dev

Android:如何在ViewPager中创建其他视图?

来自分类Dev

如何在XML中创建可重用的视图组?

来自分类Dev

如何在Android中创建Panorama 360视图

来自分类Dev

如何在iOS中创建可扩展的表格视图?

来自分类Dev

如何在android中创建可滑动视图?

Related 相关文章

热门标签

归档