2016-10-12 2 views
0

Я изучаю для exam 70-461 Querying SQL Server 2012, в главе UDF. Некоторые функции похожи на результаты, и поиск в Интернете. Я не нашел практических объяснений о том, когда следует использовать ITVF (Inline Table-Valued Function) или MTVF (Multi-statement Table Valued Function).Практические примеры использования UDF (ITVF и MTVF)

Любой может мне помочь, объясняя разницу в том, когда использовать каждый из них?

ответ

0

Встроенные функции содержат один запрос select, который вы указываете в инструкции return. Обычно они предпочтительнее, чем UDF с несколькими отчетами, поскольку SQL Server может включать внутренний запрос в общий план выполнения.

Таким образом, есть только два случая, когда вы можете захотеть использовать с несколькими операторами UDF,:

  1. Требуемая мощность не может быть эффективно производится с использованием одного select заявление;
  2. Оптимизатор запросов «промахивается» с интеграцией запросов, создавая менее эффективный план, чем если вы используете многозадачный UDF или кеш-набор строк. Такие случаи редки, но все же возможны.
Смежные вопросы