You could do something like:
select top 5 convert(varchar(8),a.workday,112) as WorkDays
from (VALUES
(dateadd(d,-1,getdate()),CHOOSE(DATEPART(dw, dateadd(d,-1,getdate())),0,1,1,1,1,1,0)),
(dateadd(d,-2,getdate()),CHOOSE(DATEPART(dw, dateadd(d,-2,getdate())),0,1,1,1,1,1,0)),
(dateadd(d,-3,getdate()),CHOOSE(DATEPART(dw, dateadd(d,-3,getdate())),0,1,1,1,1,1,0)),
(dateadd(d,-4,getdate()),CHOOSE(DATEPART(dw, dateadd(d,-4,getdate())),0,1,1,1,1,1,0)),
(dateadd(d,-5,getdate()),CHOOSE(DATEPART(dw, dateadd(d,-5,getdate())),0,1,1,1,1,1,0)),
(dateadd(d,-6,getdate()),CHOOSE(DATEPART(dw, dateadd(d,-6,getdate())),0,1,1,1,1,1,0)),
(dateadd(d,-7,getdate()),CHOOSE(DATEPART(dw, dateadd(d,-7,getdate())),0,1,1,1,1,1,0))
) as a(WorkDay,TrueFalse)
where a.TrueFalse = 1
order by a.WorkDay desc