Overview

Abstract plans allow you to specify the desired execution plan of a query. Abstract plans provide an alternative to the session-level and query-level options that force a join order, or specify the index, I/O size, or other query execution options. The session-level and query-level options are described in Chapter 12, “Creating and Using Abstract Plans.”

There are several optimization decisions that you cannot specify with set commands or clauses in the query text, for example:

In many cases when issuing T-SQL commands, you cannot include set commands or change the query text. Abstract plans provide an alternative, more complete method of influencing optimizer decisions.

Abstract plans are relational algebra expressions that are not included in the query text. They are stored in a system catalog and associated with incoming queries based on the text of these queries.