今天早上,我的思想已經完全消失。我正在創建一個proc,並且需要它使用與日期相關的WHERE子句來獲取結果。 WHERE子句應該說明報告應該從GetDate()
開始回溯兩個月。T-SQL中的GetDate()函數
這是在SQL Server 2012中使用T-SQL。包含子句日期的列稱爲[Delivery Date]
。
非常感謝。
今天早上,我的思想已經完全消失。我正在創建一個proc,並且需要它使用與日期相關的WHERE子句來獲取結果。 WHERE子句應該說明報告應該從GetDate()
開始回溯兩個月。T-SQL中的GetDate()函數
這是在SQL Server 2012中使用T-SQL。包含子句日期的列稱爲[Delivery Date]
。
非常感謝。
如果[Delivery Date]
既有日期又有時間,還想考慮時間嗎?然後嘗試
SELECT *
FROM tableName
WHERE [Delivery Date] >= DATEADD(month, -2, GETDATE())
如果[Delivery Date]
只是一個日期或忽略的部分時間?然後嘗試
SELECT *
FROM tableName
WHERE [Delivery Date] >= CONVERT(date, DATEADD(month, -2, GETDATE()))
試試這個
SELECT *
FROM tableName
WHERE [Delivery Date] < DATEADD(month, -2, GETDATE())
MSDN鏈接,DATEADD
類似的問題:Stackoverflow link
2個月前開始在每個月的1日00:00
DATEADD(mm, DATEDIFF(mm, 0, GETDATE()) - 2, 0)
2個月前在同一小時開始月份的同一天(如果適用)
DATEADD(mm, -2, GETDATE())