2
私は今年の祝日のリストを含むテーブルを持っています。さて、ここの就業日は月曜日〜土曜日です。だから、私は特定の間隔(年、月、週など)の作業日のリストを取得するような方法で私のクエリとの年次休暇テーブルをリンクしようとしています 私は土曜日年間休暇を引く(リンクする)ことはできません。営業日取得するための1か月の就業日とSQLの年間休日を組み合わせるにはどうすればよいですか?
コード:
DECLARE @StartDate DATETIME
DECLARE @EndDate DATETIME
SET @StartDate = '2017-12-01 10:00:00.000'
SET @EndDate = '2017-12-31 00:00:00.000'
SELECT
(DATEDIFF(dd, @StartDate, @EndDate) + 1)
-(DATEDIFF(wk, @StartDate, @EndDate))
-(CASE WHEN DATENAME(dw, @StartDate) = 'Sunday' THEN 1 ELSE 0 END) AS WorkingDays
テーブルAnnualHolidays
は、レイアウトを持っています
Id Date Description
----------- ----------------------- -------------------
50 2017-10-21 00:00:00.000 Holiday 1
49 2017-10-20 00:00:00.000 Holiday 2
だから、私は@StartDate
の間隔で来年次休暇を引くことができますどのような方法がありますと@EndDate
私は特定の間隔の実際の作業日を得ることができるように
何らかの理由により、年次休暇が減算されません。日曜日は削除されていますが、毎年の休日は削除されていない就業日が表示されます。 –
それを有効にすることはできましたか? '... not in(日付を選択してください:AnnualHolidays)'を実行することもできます – Magnus