当前位置: 首页 > 面试题库 >

使用通用表表达式与创建视图性能

谭梓
2023-03-14
问题内容

我有使用WITH子句几个查询或公用表表达式,用UNION
ALL语句来描述与SQL服务器的树形结构通过表再次出现在这里。如果我创建相同的VIEW而不是将它包含在WITH子句中,并在每次运行查询时生成它,我会在性能上有所不同吗?因为在多个查询中使用视图,所以实际上创建视图通常被认为是一种好的做法吗?


问题答案:

您正在查看的是Common Table Expression,而不是View。如果要进行递归,则需要坚持使用CTE,而不要尝试将其滚动到视图中。

除非您在视图上创建聚簇索引,否则MS
SQL中的视图不会给您带来任何html" target="_blank">性能上的好处。从您的问题的声音来看,情况并非如此。您最好将CTE封装在存储过程中。



 类似资料:
  • 问题内容: 我有一个我想在SQL企业管理器中创建表的视图,但是运行此查询时总是会出现错误: 到目前为止,错误是:“’as’处的语法错误” 视图太大。是否可以使用前10名? 问题答案: 不支持。 用这个: 或者

  • 问题内容: 最近开始使用一个数据库,其中的约定是为每个表创建一个视图。如果您假设表和视图之间存在一对一的映射,那么我想知道是否有人可以告诉我这样做的性能影响。顺便说一句,这是在Oracle上。 问题答案: 假设问题是关于非具体化视图的,那么- 确实取决于该视图所基于的查询以及对其执行的操作。有时,谓词可以由优化器推入视图查询中。如果不是这样,那将不如表格本身好。视图建立在表格之上- 为什么您期望性

  • 问题内容: 我正在使用通用表表达式进行分页: 进行此查询后,我立即进行几乎相同的查询以检索项目总数: 我尝试将它们组合在一起(即:定义CTE,查询数据,然后查询Count,但是当我这样做时,响应第二个查询(Count),我收到一条错误消息“ Invalid object name’query’” )。 有什么方法可以将这两个查询合并为一个,以节省往返数据库的费用? 问题答案: 如果您在2个不同的查

  • 在阅读了关于表达式的这个极好的答案之后,我尝试将我的<code>平面图</code>转换为表达式</code>的<code>。 然后,for-expression。 我得到一个编译时错误 我的for表达式怎么了?

  • 我是vba新手,正在尝试使用vba和Excel创建。 我想创建像下面的图像作为输入表。 我试图添加、、、的行标签,值为、和。不为SHEET1生成任何透视表。

  • 问题内容: 我需要使用Apache POI库从Java代码创建excel表,其中包含条形图,折线图等图表。可能吗?我找不到相同的任何有用的代码示例。 除了Java的POI库之外,还有其他替代方法吗? 问题答案: 您只能使用Excel模板通过POI保留图表。这意味着您将创建一个包含图表的Excel模板文件,并将图表的数据源链接到一个defineName,然后可以从POI加载模板文件,并使用代码来更改