SQL獲取當月天數的幾種方法

2021-09-19 21:31:15 字數 817 閱讀 5892

原文:sql獲取當月天數的幾種方法

日期直接減去int型別的數字 等於 dateadd(day,- 數字,日期)

下面三種方法:

1,日期加乙個月減去當前天數,相當於這個月最後一天的日期。然後獲取天數。(注意,不能用這種方式:當前日期減去當前天數,再加乙個月,新日期不一定是當前月的最後一天的日期。比如當前月是3月。錯誤:select day(dateadd(month,1,getdate()-day(getdate()))))

select day(dateadd(mm,1,getdate())-day(getdate()))

2,convert把日期轉換成120格式的是 "2011-1-1"這種格式。

最終也是得到這個月最後一天。然後獲取天數。

select day( dateadd(day,-1, dateadd(month,1,convert(char(07),getdate(),120)+'-01')) ),

3,下個月的今天與和今天的日期差  。 (這個月剩下的日期+已經過去的日期)

select datediff(dd , getdate(), dateadd(mm, 1,getdate()))

4,下面這個方法很犀利。

先得到上個月的最後一天,然後加乙個天數(黑色標記),這個天數只要大於乙個月小於兩個月的天數即可。

得到下個月的日期。然後用這個天數減去新生成的日期多出來的天數,即當前月的天數。

select 32-day(getdate()-day(getdate())+32)

5,同上

select 50-day(getdate()-day(getdate())+50)

SQL獲取當月天數的幾種方法

原文 sql獲取當月天數的幾種方法 日期直接減去int型別的數字 等於 dateadd day,數字,日期 下面三種方法 1,日期加乙個月減去當前天數,相當於這個月最後一天的日期。然後獲取天數。注意,不能用這種方式 當前日期減去當前天數,再加乙個月,新日期不一定是當前月的最後一天的日期。比如當前月是...

ORACLE根據日期獲取當月的天數

create or replace function get days p date date return number authid current user asp days number 0 begin select to date to char add months p date,1 y...

獲取元素的幾種方法

document.getelementbyid id document.getelementbytagname 標籤名 document.getelementbyclassname classname 獲取父節點,元素物件.parentnode 獲取子元素,元素物件.children 獲取下乙個兄弟...