[SQL Server]查詢月份

  • 853
  • 0

想查詢本月份資料使用

可直接執行以下程式碼

SELECT  DATEADD(mm, DATEDIFF(mm, '', getdate()), '');  --本月份第一天

SELECT  DATEADD(day, -1, DATEADD(mm, DATEDIFF(mm, '',  getdate())+1, '')); --本月份最後一天

SELECT  DATEADD(mm, -1, DATEADD(mm, DATEDIFF(mm, '', getdate()), '')); --前一個月份第一天

SELECT  DATEADD(day, -1, DATEADD(mm, DATEDIFF(mm, '', getdate()), '')); --前一個月份最後一天

 

套用在查詢條件上:

ex:查出本月份區間的資料

SELECT * FROM table WHERE date between DATEADD(mm, DATEDIFF(mm, '', getdate()), '')  and  DATEADD(day, -1, DATEADD(mm, DATEDIFF(mm, '',  getdate())+1, ''));