2017-08-24 95 views
2

我有一個查詢查找我的表中的所有日期,他們是星期四。此外,我可以用這段代碼找到第二個和第四個星期四的大部分時間,但有時會發現它們,增加額外的或錯過它們。我怎樣才能使這更精確?找到每隔第二和第四個星期四

select Date, DATENAME(dw, Date) as 'Day' 
from Appointment_Calendar 
where DATENAME(dw, Date) = 'Thursday' and DATEPART(day,Date) between 8 and 14 
    or DATENAME(dw, Date) = 'Thursday' and DATEPART(day,Date) between 23 and 30 

作爲示例,該腳本查找11/30作爲第五個星期四的有效日期。

我的表格開始日期是今天8/24/2017供參考。

回答

5

第四個星期四應該在該月的第22和28天之間,而不是第23和第30天。我認爲變化應該是這麼簡單......

因此改變最後一行:

or DATENAME(dw, Date) = 'Thursday' and DATEPART(day,Date) between 22 and 28 
+0

哇我忽略了這一點,我最初開始用22和29之間謝謝 – SgtOVERKILL

相關問題