Sql server 如果从存储过程调用,SQL Server视图索引是否正确执行?

Sql server 如果从存储过程调用,SQL Server视图索引是否正确执行?,sql-server,stored-procedures,indexed-view,Sql Server,Stored Procedures,Indexed View,我们正在使用的ORM(LLBL)在从SQLServer索引视图中选择时不容易支持NOEXPAND关键字,据我所知,这几乎否定了索引视图的用途 我通常会出于几个原因避开存储过程(我将通过不提及来避免一场激烈的战争),因此我承认,我在这一点上的犹豫部分是由于缺乏最近使用SQL Server和存储过程的工作经验 如果我从存储过程调用索引视图,是否有任何东西会导致它无法工作,我需要知道 有什么我需要知道的,会导致索引 如果我从存储过程调用视图,它将不起作用 不!当您从SP调用索引视图时,它们可以正常工作

我们正在使用的ORM(LLBL)在从SQLServer索引视图中选择时不容易支持NOEXPAND关键字,据我所知,这几乎否定了索引视图的用途

我通常会出于几个原因避开存储过程(我将通过不提及来避免一场激烈的战争),因此我承认,我在这一点上的犹豫部分是由于缺乏最近使用SQL Server和存储过程的工作经验

如果我从存储过程调用索引视图,是否有任何东西会导致它无法工作,我需要知道

有什么我需要知道的,会导致索引 如果我从存储过程调用视图,它将不起作用


不!当您从SP调用索引视图时,它们可以正常工作。在许多情况下(并非100%确定是否全部)您可以像普通表一样使用索引视图。

谢谢,这是我的直觉,但我认为最好检查一下我最近做了这件事,它工作得很好。一些附加信息。。。在我的例子中,TableValuedFunction比IndexedView表现得更好。我不是告诉您将IndexedView更改为TableValue函数。我认为llbl在函数方面是迟钝的,因为它在索引视图方面也是迟钝的:)@CharithJ这一切都取决于索引视图做什么,TVF如何复制它,以及你是否可以编写一个等价的TVF。我已经实现了几个案例,其中索引视图可以轻而易举地击败TVF,至少在查询时是这样。请记住,在编写数据时,您确实需要为索引视图的索引维护付费,而TVFs显然不会这样做。