date
,employeeID
(int)、ShiftWorked
(夜間/日/週末または夕方)のテーブルがあります。各従業員と日付の組み合わせの行があります日付範囲で条件が満たされているMSSQLの選択カウント
ロスタ期間内の各日付の前後に夜間シフトを行った人数をカウントするクエリを作成したいと考えています。
--------------------------------------------------------------------------
Date (yyyy-MM-dd) | CountOfNightshifts(for 1 week either side of date)
--------------------------------------------------------------------------
2012-1-1 | 8
2012-1-2 | 12
2012-1-3 | 11
2012-1-4 | 6
etc | etc
これは明らかです。私はこれを働かせるために何日も過ごしましたが、私はどこにも行きません。例えば
:
SELECT COUNT(id), [date]
FROM ROSTER
WHERE Shift = night AND [date] BETWEEN DATEADD(D,-7,[date]) AND DATEADD(d,7,[date])
GROUP by [date]
group by [date]
これは私の日付のリストと、その特定の日の夜のカウント与えるだろう - 日付の前と後の7日にはいないすべての夜勤を。
あなたがすでに試したことを投稿してください。 –