Il peut y avoir une grande différence de performance entre l'utilisation des variables de table et les tables temporaires. Dans la plupart des cas, les tables temporaires sont plus rapides que les variables de table. J'ai pris l'astuce suivante du groupe de discussion privé SQL Server MVP et j'ai reçu l'autorisation de Microsoft pour le partager avec vous. Un MVP a remarqué que bien que les requêtes utilisant des variables de table ne génèrent pas de plans de requête parallèles sur une grande boîte SMP, des requêtes similaires utilisant des tables temporaires (locales ou globales) et s'exécutant dans les mêmes circonstances généraient des plans parallèles.
Plus de SQL Mag (abonnement requis malheureusement, je vais essayer de trouver plus de ressources momentanément)
EDIT: est un peu plus ici des informations détaillées de CodeProject
Dans mon expérience 50K serait trop pour une table var mais je n'ai pas de données concrètes pour soutenir cela. J'essaie généralement de garder des vars de table <5K. – brendan
Vous pouvez créer des index supplémentaires sur # tables alors que vous ne pouvez pas créer d'index sur vars. – Joe
Une variable temp débordera sur le disque aussi lorsque vous pomper suffisamment de données, 50K lignes le pousseront sur le disque partiellement – SQLMenace