months_between计算月份差,这篇讲得太清楚了!

吉云

今儿个心血来潮,想搞明白两个日期之间到底隔几个月。我立马动手试试,还真让我给折腾出来。

实践出真知

我有点懵,不知道从哪儿下手。后来我想,这玩意儿肯定有函数能直接算出来,于是我就去搜搜,果然,有个叫 MONTHS_BETWEEN 的函数,就是干这个的。

months_between计算月份差,这篇讲得太清楚了!

找到函数后,我就开始琢磨咋用。看看网上的说法,这函数得放俩日期进去,一个大的,一个小点的,格式还得是“年-月-日”这样婶儿的。

我照着这个路子,写一段代码:


SELECT MONTHS_BETWEEN(TO_DATE('2023-05-31', 'YYYY-MM-DD'), TO_DATE('2023-01-15', 'YYYY-MM-DD')) AS MONTHS_DIFF FROM DUAL;

months_between计算月份差,这篇讲得太清楚了!

这里头,我用俩日期,一个是 2023 年 5 月 31 号,一个是 2023 年 1 月 15 号。我还用 TO_DATE 函数把字符串格式的日期给转成日期格式,这样 MONTHS_BETWEEN 函数才能认得。

结果展示

运行结果出来,显示的是 4.516129。 还真算出来!

months_between计算月份差,这篇讲得太清楚了!

不过这数字咋还有小数?我寻思着,这应该是把不足一个月的部分也给算进去。要是只想要整数部分,估计还得再处理一下。

  • 大的日期要放在前面。
  • 日期格式得是'YYYY-MM-DD'。
  • 可以用TO_DATE函数进行日期转换。

months_between计算月份差,这篇讲得太清楚了!

这回实践还是挺有收获的。下次再遇到算月份差的事儿,我就知道咋办!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]