Je suis curieux de savoir lequel des éléments suivants serait le plus efficace?
J'ai toujours été un peu prudent dans l'utilisation INcar je pense que SQL Server transforme l'ensemble de résultats en une grande IFdéclaration. Pour un ensemble de résultats volumineux, cela peut entraîner de mauvaises performances. Pour les petits ensembles de résultats, je ne suis pas sûr que l'un ou l'autre soit préférable. Pour les grands ensembles de résultats, ne serait-il pas EXISTSplus efficace?
WHERE EXISTS (SELECT * FROM Base WHERE bx.BoxID = Base.BoxID AND [Rank] = 2)
contre.
WHERE bx.BoxID IN (SELECT BoxID FROM Base WHERE [Rank = 2])
select 1 from Base...faire where existspuisque vous ne vous souciez pas réellement des résultats, juste qu'une ligne existe réellement.