5
我只是新的SQL Server的查詢中的日期。我有一個名爲duedate的專欄。我想過濾當月內的duedate數據。SQL服務器 - 顯示當前月份
SELECT * FROM TABLE1 WHERE duedate = within current month only
在此先感謝。
我只是新的SQL Server的查詢中的日期。我有一個名爲duedate的專欄。我想過濾當月內的duedate數據。SQL服務器 - 顯示當前月份
SELECT * FROM TABLE1 WHERE duedate = within current month only
在此先感謝。
您應該使用範圍查詢,而不是包裹在一個函數調用列,這樣的指標可以使用。
SELECT *
FROM TABLE1
WHERE duedate >= DATEADD(month, DATEDIFF(month, 0, getdate()), 0)
AND duedate < DATEADD(month, 1 + DATEDIFF(month, 0, getdate()), 0)
此查詢的列使用索引。 –
但是不要忘了[這個問題](http://www.sqlperformance.com/2013/09/t-sql-queries/datediff-bug),你首先smartened我約[這裏](HTTP:/ /stackoverflow.com/a/18242413/61305)。 –
@AaronBertrand - 好一點,羞辱他們沒有提到的SQL Server版本。鏈接問題的解決方法是2008+。 –