SQL Server を使用して 2 つの日付間の営業日数を計算します
指定された 2 つの日付の間の営業日数を決定することは、データ分析とレポート生成における一般的なタスクです。 SQL Server では、T-SQL を使用してこの計算を効率的に実行できます。
クエリ:
2 つの日付の間の営業日数 (月曜日から金曜日まで) を計算するには、次のクエリを実行します:
<code class="language-sql">DECLARE @StartDate DATETIME; DECLARE @EndDate DATETIME; SET @StartDate = '2008/10/01'; SET @EndDate = '2008/10/31'; SELECT (DATEDIFF(dd, @StartDate, @EndDate) + 1) -(DATEDIFF(wk, @StartDate, @EndDate) * 2) -(CASE WHEN DATENAME(dw, @StartDate) = 'Sunday' THEN 1 ELSE 0 END) -(CASE WHEN DATENAME(dw, @EndDate) = 'Saturday' THEN 1 ELSE 0 END);</code>
手順:
DATEDIFF(dd, @StartDate, @EndDate) 1
開始日と終了日を含む 2 つの日付間の合計日数を計算します。 DATEDIFF(wk, @StartDate, @EndDate) * 2
総日数から週末の日数(週2日)を引きます。 -(CASE WHEN DATENAME(dw, @StartDate) = 'Sunday' THEN 1 ELSE 0 END)
開始日を日曜日に調整します。 -(CASE WHEN DATENAME(dw, @EndDate) = 'Saturday' THEN 1 ELSE 0 END)
終了日を土曜日に調整します。 その他の考慮事項:
計算に休日を含めるには、別のテーブルを作成して休日の日付を定義し、クエリに追加します。これには、指定された期間内に含まれる休日の数を減算する追加のロジックが必要です。
以上がSQL Server で日付間の勤務日を計算するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。