Existe-t-il un moyen dans SQL Server 2008 de faire quelque chose comme ci-dessous?SQL Server - Conditionnel APPLICATION EXTERNE
La table extérieure (jointe) peut-elle être spécifiée en fonction d'une condition?
declare @bGetExtendedInfo bit
set @bGetExtendedInfo = 1
declare @param nvarchar(24)
set @param = 'CO-02-BBB'
select t1.*, t2.ID
from t1
outer apply (
case when @bGetExtendedInfo= 0
then (select 0) as ID /* dummy value */
/*really expensive query trying to avoid when extended info is not needed*/
else (select top 1 ID from tbl1 where tbl1.code = @param)
end
) t2
Merci Gordon et JW pour votre réponse. Je veux accepter les deux comme des réponses car cela m'a vraiment aidé à apprendre une bonne technique. Cependant, je me rends compte que je n'ai pas fourni assez d'informations sur ce que j'essayais de faire. S'il vous plaît voir ma question éditée. – mmmmmm