SQL Server IN против производительности EXISTS

Любопытно, что из нижеперечисленного было бы более эффективным?

мы всегда были немного осторожны в использованииIN потому что я считаю, что SQL Server превращает набор результатов в большойIF заявление. Для большого набора результатов это может привести к снижению производительности. Для небольших наборов результатов яЯ не уверен, что либо предпочтительнее. Для больших наборов результатов, не будетEXISTS быть более эффективным?

WHERE EXISTS (SELECT * FROM Base WHERE bx.BoxID = Base.BoxID AND [Rank] = 2)

против

WHERE bx.BoxID IN (SELECT BoxID FROM Base WHERE [Rank = 2])

Ответы на вопрос(9)

Ваш ответ на вопрос