Svarar 8 år för sent, men jag är förvånad över att ingen tänkte på:
select * into #MyTempTable from...
where 1=2
IF -- CONDITION HERE
insert into #MyTempTable select...
ELSE
insert into #MyTempTable select...
Enkelt, snabbt och det fungerar. Ingen dynamisk sql behövs