2009-08-13 6 views
1

Je suis nouveau à SQL 2008. Lorsque je regarde les expressions de table communes (mot clé WITH), comment comparer les performances à l'utilisation d'une table temporaire. Outre la syntaxe/lisibilité, y a-t-il d'autres avantages à utiliser des CTE?Expressions de table communes par rapport à la table temporaire

+2

Vous ne pouvez pas effectuer de requêtes récursives à l'aide de tables temporaires. –

Répondre

2

Je n'ai pas effectué de mesure exesive, mais les tables temporaires sont stockées dans la base de données temporaire. Les CTE ne le sont pas, donc dans la plupart des cas, ils devraient être plus rapides. Mais dans certains cas, vous pouvez créer de grandes tables temporaires et créer des index pour accélérer les calculs. Ce n'est pas possible avec les CTE. Dans ce cas, ils sont probablement plus lents. Mais comme d'habitude: je ne pense pas qu'il y ait une réponse générale. Cela dépend toujours de votre requête et du plan de requête qui en résulte.

Questions connexes