Как реализованы внутренние и левые и правые внешние объединения в SQL Server? - PullRequest
5 голосов
/ 17 февраля 2011

Я ищу высокоуровневое алгоритмическое понимание, чтобы я мог получить представление о том, что SQL-Server делает для выполнения объединений.Не стесняйтесь быть кратким, я не ищу крайне мрачный песок.То, что побудило меня понять, как лучше реализованы объединения, это сценарий, стоящий за этим вопросом , который я также только что опубликовал.Я чувствовал, что в конечном счете это были два отдельных вопроса, поэтому я не совмещал их.

Спасибо!

Ответы [ 3 ]

10 голосов
/ 17 февраля 2011
1 голос
/ 18 февраля 2011

Честно говоря, если вы заинтересованы в таком уровне детализации, я бы предложил вам прочитать Внутренние компоненты Microsoft SQL Server 2008 .

И научись читать планы выполнения. SQL Server имеет довольно хороший механизм оптимизации. Не всегда все происходит так, как мы, люди, ожидаем, или даже одинаково для двух запросов, которые кажутся нам похожими.

0 голосов
/ 17 февраля 2011

SQL Server может выбирать из множества различных объединений: наиболее распространенными являются объединения, циклы и хэш. См. Эту статью KB .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...