简单问题:建立视图的原则是什么?

mdog26 2008-03-14 10:49:10
简单问题:建立视图的原则是什么?

对多表连接查询(表的数量很多)是 用子查询效率高点 , 还是建立视图 后视图查询的效率高?
...全文
176 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yiyi_wx 2008-03-17
  • 打赏
  • 举报
回复
说句题外话啊,刚才是lz在JAVA版要的js的date控件吧?已经发你邮箱里了,注意查收~
mdog26 2008-03-17
  • 打赏
  • 举报
回复
就子查询 和 视图来说

当我查询视图的时候,是不是间接的调用了子查询

如果是,就是说明 ,子查询的效率比视图的效率高
JL99000 2008-03-17
  • 打赏
  • 举报
回复
视图最开始的用途就是提供给数据库用户一个逻辑视图(相对于物理视图-基本表而言),所以视图存储在数据库中只是一段SQL语句,如果在视图上做查询,正如弱水大哥所说的,是要把现有的查询条件和视图的SQL联合起来,进行查询优化,此时视图的最大好处是基本表的变动(增加字段)不会影响到视图,同时也可以简化SQL语句的写法。

另外,建立索引视图才是能真正提高查询效率的方法
但是,这又失去了视图的原始含义
mdog26 2008-03-17
  • 打赏
  • 举报
回复
谢谢!yiyi_wx
wanghaojie 2008-03-14
  • 打赏
  • 举报
回复
建立视图 后视图查询的效率高
-狙击手- 2008-03-14
  • 打赏
  • 举报
回复
下列原因将视图包括在设计中:

一些数据子集关系到许多用户。由于每个视图都存储在数据库内,所以视图建立特定的数据子集以供任何数据库用户使用。


视图可以隐藏基表。可以禁止所有用户访问数据库表,而要求用户只能通过视图操作数据。这种方法可以保护用户和应用程序不受某些数据库修改的影响。例如,如果可以创建一个名为"本月销售额"的视图。在每月的第一天,可以相应地修改视图的定义。如果没有这个视图,用户每月都必须重新编写查询以选择相应月份的销售额。

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧