C 計算兩個日期之間的月份數(差值)

2021-09-10 21:42:33 字數 426 閱讀 7804

var months = ((datetime.now.year - basedate.year) * 12) + datetime.now.month - basedate.month;
(當前日期年份 - 目標日期年份 * 12)+ 當前日期月份 - 目標日期月份

一年 12 個月是固定的,所以年份差乘以 12 得出的月份加上目標日期與當前日期的差值既兩個日期之間的月份總數。

順便來乙個獲取當前月份最後一天的邏輯,其實在很多年前資料庫儲存過程盛行的時候,大部分就是用下面這種方式。

首先將日期格式化為 yyyy-mm-01,這樣就得到當月的第一天。在當前月上再加乙個月,然後減一天就得到當月的最後一天了。

basedate.addmonths(i + 1).adddays(-1)

獲取兩個日期之間的月份數與天數

返回乙個二維陣列,單位分別是月和日,代表兩個date之差。本方法忽略小時和分鐘。例 1,2012年6月1日到2012年6月3日,返回值是 0,2 2天 2,2012年6月15日到2012年8月4日,返回值是 1,20 1個月零20天 3,2011年11月3日到2013年1月14日,返回值是 14,1...

oracle中計算兩個日期之間的差值

最近幾天在工作中用到了一項計算時間的功能,計算兩個時間之間的天數差,順道總結一下oracle中的語句 兩個date型別字段 start date,end date,計算這兩個日期的時間差 分別以天,小時,分鐘,秒,毫秒 天 round to number end date start date 小時...

PHP 計算兩個日期的差值

date1 date create date y m d h i s 當前日期 date2 date create row 4 row 4 是我從資料庫中返回的乙個時間戳 datediff date diff date2 date1 format a datediff int datediff da...