Le nombre de tables est “de trop” dans une seule SQL SELECT?

En tant que DBA MS SQL 2000 et 2005, je vais régulièrement voir des requêtes de sélection de Rejoindre de 7 à 10 ou même plus de tables. Je trouve, cependant, qu'il existe un certain point de passé et dont le rendement a tendance à souffrir, et la requête devient très difficile à déboguer et/ou à améliorer.

Donc, il y a une "règle du pouce" pour quand je dois être d'envisager d'autres méthodes de requête, comme les tables temporaires pour tenir les résultats préliminaires? Ou est-il un point au-delà duquel la requête SQL optimizer juste ne pas faire un très bon travail de déterminer le meilleur plan?

OriginalL'auteur BradC | 2009-06-09