8 jaar te laat antwoorden, maar het verbaast me dat niemand aan het volgende heeft gedacht:
select * into #MyTempTable from...
where 1=2
IF -- CONDITION HERE
insert into #MyTempTable select...
ELSE
insert into #MyTempTable select...
Simpel, snel en het werkt. Geen dynamische sql nodig