Réponses:
SQL Server 2012 a un indicateur dans le plan lui-même, RetrievedFromCache
qui peut être "vrai" ou "faux".
Cela semble être la propriété que vous demandez.
Ceci est un exemple (la dernière ligne montre la propriété):
<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">
Malheureusement, je ne vois rien de similaire dans un plan généré par SQL Server 2008 R2.
Dans SQL Server 2008 R2, vous pouvez utiliser le sys.dm_exec_query_stats
DMV système pour inspecter la creation_time
colonne pour les plans qui ont la même query_hash
valeur. Le hachage de requête peut être obtenu à partir de l'en-tête du plan XML (voir l'exemple ci-dessus). Cette requête renverra des lignes concernant le plan mentionné ci-dessus:
SELECT *
FROM sys.dm_exec_query_stats qs
WHERE qs.query_hash = 0x9A4B63A948B30EA0;