通过连接表来创建SQL视图是一种好的做法吗?

通过连接表来创建SQL视图是一种好的做法吗?,sql,sql-server,sql-view,Sql,Sql Server,Sql View,我有一个问题,通过连接两个或多个表来创建SQL视图是否存在性能问题? 这是一种良好的做法,还是应该创建另一个包含联接的表并在其上创建视图?是的,您可以通过联接两个或多个表来创建视图。有关更高效的视图,请查看创建索引视图。 基本上,视图只提供所需的界面(重命名的列和数据),用于向用户隐藏内部列和表的详细信息。视图创建一个逻辑表,该表可以是任何SQL语句的结果 创建视图时,您会记住以下内容:- 限制列(通过选择)或行(通过where)的可见性 仅适用于与任务相关的人员 从多个字段合并行(通过并集)

我有一个问题,通过连接两个或多个表来创建SQL视图是否存在性能问题?
这是一种良好的做法,还是应该创建另一个包含联接的表并在其上创建视图?

是的,您可以通过联接两个或多个表来创建视图。有关更高效的视图,请查看创建索引视图。 基本上,视图只提供所需的界面(重命名的列和数据),用于向用户隐藏内部列和表的详细信息。

视图创建一个逻辑表,该表可以是任何SQL语句的结果

创建视图时,您会记住以下内容:-

  • 限制列(通过选择)或行(通过where)的可见性 仅适用于与任务相关的人员
  • 从多个字段合并行(通过并集)和或列(通过联接) 将表合并为一个逻辑表
  • 将行(通过Group BY和Having)聚合到一个更独特的 从具有更精细细节的表格中提取的演示文稿
视图具有以下优点:(请参见-)

  • 安全性-用户可以访问视图,而底层 无法直接访问表。这允许DBA只向用户提供数据 在保护同一表中的其他数据时,它们需要
  • 简单性-视图可用于隐藏和重用复杂查询
  • 列名简化或澄清-视图可用于 在列名上提供别名,使其更容易记忆或记忆 有意义

谢谢

创建一个视图。这是一件正常的事情。索引视图可以提高不同情况下的性能。抄袭自?@jarlh我只抄袭了好处-事实上我给出了Aditya Pawar所需的全部描述。如果我在给出答案时违反了任何规则,那么我可以删除答案中的“观点的好处”。回复,请您添加原始答案的链接。