首頁  >  文章  >  資料庫  >  如何在TSQL中計算兩個日期之間特定日期的出現次數?

如何在TSQL中計算兩個日期之間特定日期的出現次數?

Patricia Arquette
Patricia Arquette原創
2024-10-31 06:13:30646瀏覽

How to Count Occurrences of Specific Days Between Two Dates in TSQL?

統計TSQL 中日期之間特定日期的出現次數

在TSQL 中處理與日期相關的計算時,確定特定工作日的頻率可以成為一個挑戰。其中一個場景涉及計算兩個給定日期之間的“星期二”數量。

解決方案

要計算任何一天(包括星期二)的實例數,您可以使用提供的代碼:

<code class="tsql">declare @from datetime= '3/1/2013' 
declare @to datetime  = '3/31/2013' 


select 
 datediff(day, -7, @to)/7-datediff(day, -6, @from)/7 AS MON,
 datediff(day, -6, @to)/7-datediff(day, -5, @from)/7 AS TUE,
 datediff(day, -5, @to)/7-datediff(day, -4, @from)/7 AS WED,
 datediff(day, -4, @to)/7-datediff(day, -3, @from)/7 AS THU,
 datediff(day, -3, @to)/7-datediff(day, -2, @from)/7 AS FRI,
 datediff(day, -2, @to)/7-datediff(day, -1, @from)/7 AS SAT,
 datediff(day, -1, @to)/7-datediff(day, 0, @from)/7 AS SUN</code>

在此在代碼中,您可以透過調整對應的日期代碼(例如-6 表示星期二)來將「星期二」替換為任何其他所需的日期。

透過提供開始日期和結束日期,此程式碼計算該時間段內每天發生的次數。它假定開始日為星期一(代碼 -7),併計算開始日期和結束日期之間 7 的倍數(例如,自星期一以來的天數的倍數)之間的差值。這可以有效地計算指定日期範圍內每天的實例數。

以上是如何在TSQL中計算兩個日期之間特定日期的出現次數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn