Большой стол с несколькими внешними сравнительными характеристиками - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть большая таблица с примером запроса, как показано ниже, для получения совпавших результатов.

Select col1,col2,col3
from
Table1 T1
OUTER APPLY (select col2 from Table2 Where t2id=T1.id)
OUTER APPLY (select col3 from Table3 Where t3id=T1.id)
Where col3>0

Проблема в том, что он работает очень медленно, когда у меня есть проверка значения столбца условия Where.

Я пробовал другой подход, включая CROSS APPLY, без улучшения производительности.

Есть идеи?

1 Ответ

1 голос
/ 10 сентября 2011

Попробуйте переместить предложение where внутри оператора select. Это должно привести к меньшему количеству строк для вычисления и, следовательно, к более быстрым результатам

Select col1,col2,col3
from
Table1 T1
OUTER APPLY (select col2 from Table2 Where t2id=T1.id)
OUTER APPLY (select col3 from Table3 Where t3id=T1.id Where col3>0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...