簡體   English   中英

Select 使用 LINQ 計算兩個日期之間的天數

[英]Select Count days between two dates using LINQ

我需要獲取兩個日期之間的假期數。 我嘗試使用下面的查詢,但我得到的計數不正確。

開始日期 結束日期
01/2/2022 03/2/2022
17/2/2022 19/2/2022
SELECT COUNT(*) FROM table
WHERE StartDate <= '02/2/2022' and EndDate >= '19/2/2022'

我如何設置此日期 => '02/2/2022' 從表的第一行返回兩個日期之間的天數,並從第二行獲取天數。

計數必須為 5 天。

最簡單的方法是有一個表,每天一行,例如從 2000 年到 2099 年,然后你可以:

SELECT COUNT(*) 
FROM
  cal           --your dates table
  INNER JOIN h. --your holiday table 
  ON cal.d BETWEEEN h.start AND h.end
WHERE
  cal.d BETWEEN '2022-02-02' AND '2022-02-19'

聯接將產生 6 行,將其修剪為 5 行,這是您的計數

生成日歷表或其等效項(任意一系列日期)是讀者的練習。看到這樣的東西

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM