Подтвердить что ты не робот

Функция SQL Server или функция таблицы?

У кого-нибудь есть хорошее дерево решений для принятия решения о том, когда использовать представление и когда использовать табличную функцию в SQL Server?

4b9b3361

Ответ 1

Хотя любое представление почти тривиально может быть преобразовано в встроенную функцию с табличной оценкой, обратное неверно.

Если конструкцию необходимо параметризовать, используйте функцию inline table-value. Встроенные функции table-value - это в основном параметризованные представления с точки зрения оптимизатора, способного объединить их с представлениями и проталкивать вещи. Многозадачные табличные функции вовсе не похожи на встроенные табличные функции.

Если вы не можете сделать это с помощью встроенной функции, ориентированной на таблицу, используйте многозначную табличную функцию.

Ответ 2

Определенные вещи, которые вы не можете сделать в представлении (например, переменные таблицы, промежуточные результаты, прежде чем вы вернетесь к набору результатов и т.д.)... если вам это не нужны, просмотрите, если хотите, sproc/udf: -)

Ответ 3

Хорошо, я дам использование, которое мы делаем. У нас есть таблицы, но мы никогда не обращаемся к таблицам, а о представлениях о таблицах. Это просто проблема с безопасностью.