回答:
SQL Server 2012では、プラン自体にインジケーターRetrievedFromCache
があり、「true」または「false」のいずれかになります。
これはあなたが質問しているプロパティのようです。
これはサンプルです(最後の行はプロパティを示しています)。
<StmtSimple StatementCompId="1" StatementEstRows="1" StatementId="1"
StatementOptmLevel="FULL" StatementOptmEarlyAbortReason="GoodEnoughPlanFound"
StatementSubTreeCost="0.0508992" StatementText="SELECT COUNT(*)

FROM sys.tables" StatementType="SELECT"
QueryHash="0x9A4B63A948B30EA0" QueryPlanHash="0xF357CAE882D5B15D"
RetrievedFromCache="true">
残念ながら、SQL Server 2008 R2によって生成されたプランに同様のものはありません。
SQL Server 2008 R2では、sys.dm_exec_query_stats
システムDMVを使用creation_time
して、同じquery_hash
値を持つプランの列を検査できます。クエリハッシュは、プランXMLのヘッダーから取得できます(上記の例を参照)。このクエリは、上記の計画に関する行を返します。
SELECT *
FROM sys.dm_exec_query_stats qs
WHERE qs.query_hash = 0x9A4B63A948B30EA0;