Представление похоже на один сохраненный оператор запроса, оно не может содержать сложную логику или несколько операторов (кроме использования объединения и т. Д.). Для чего-либо сложного или настраиваемого с помощью параметров вы бы выбрали хранимые процедуры, которые обеспечивают большую гибкость.
Обычно в архитектуре базы данных используется комбинация представлений и хранимых процедур, и, возможно, по очень разным причинам. Иногда это достигается обратной совместимостью в sprocs при переработке схемы, иногда для того, чтобы сделать данные более удобными в обращении по сравнению с тем, как они хранятся в таблицах (десенорализованные представления).
Интенсивное использование представлений может снизить производительность, поскольку SQL Server труднее оптимизировать эти запросы. Однако можно использовать индексированные представления, которые могут фактически повысить производительность при работе с объединениями так же, как и индексированные таблицы. Существуют более жесткие ограничения на допустимый синтаксис при реализации индексированных представлений и множество тонкостей, чтобы заставить их работать в зависимости от выпуска SQL Server.
Представьте, что представления больше похожи на таблицы, чем на хранимые процедуры.