ステータスごとに週ごとにバグの数を計算するクエリ(バグtracker.netで使用するため)があります。しかし、クエリは週番号を返します。私が本当に欲しいのは週の最初の日付です
select datepart(wk, DateAdd(day, 0, DateDiff(day, 0, bg_reported_date)))
as [week], bg_status , st_name as [status], count(*) as [count]
from bugs inner join statuses on bg_status = st_id
group by datepart(wk, DateAdd(day, 0, DateDiff(day, 0, bg_reported_date))),
bg_status, st_name
order by [week], bg_status
週番号を取得する部分は
datepart(wk, DateAdd(day, 0, DateDiff(day, 0, bg_reported_date))) as [week]
次の出力を返します。
week bg_status status count
----------- ----------- --------------------------------------------- ------
22 1 new 1
22 5 closed 32
ただし、毎週の最初の日付を言う方がよいでしょう。たとえば、2010年1月1日、次に2010年8月1日などです。
質問は重複していませんSQLServerの週番号から「週の開始日」と「週の終了日」を取得するにはどうすればよいですか。(回答は、週番号からではなく、日付から週の開始を取得する方法を示しています)
週番号から日付を計算するのと重複していません(質問はc#を要求します)
提供された日付から週の最初の日付を取得するのと重複していません(質問はjavascriptを要求します)
検索しましたが、SQL Serverについて回答されたこの質問が見つかりませんでした(重要な場合は2010)