Dates are tricky from a definitional perspective; I think what others
are posting questions about is that you need to define what you mean
by a week. Is it the ISO standard? Is the week of the year? Is it
the first day of the week (Sunday or Monday according your regional
settings)?
I usually group by the first day of the week for reporting purposes,
unless required to do otherwise.
SELECT DATEADD(wk, DATEDIFF(wk,0, CURRENT_TIMESTAMP), 0),
DATEADD(wk, -1, DATEADD(wk, DATEDIFF(wk,0, CURRENT_TIMESTAMP), 0)),
DATEADD(wk, -2, DATEADD(wk, DATEDIFF(wk,0, CURRENT_TIMESTAMP), 0)),
DATEADD(wk, -3, DATEADD(wk, DATEDIFF(wk,0, CURRENT_TIMESTAMP), 0))
HTH,
Stu