日期函数months_between的用法[通俗易懂]

日期函数months_between的用法[通俗易懂]MONTHS_BETWEEN(date1,date2)用于计算date1和date2之间有几个月。如果date1在日历中比date2晚,那么MONTHS_BETWEEN()就返回一个正数。如果date1在日历中比date2早,那么MONTHS_BETWEEN()就返回一个负数。如果date1和date2日期一样,那么MONTHS_BET…

大家好,又见面了,我是你们的朋友全栈君。

 

 

    MONTHS_BETWEEN (date1, date2)
    用于计算date1和date2之间有几个月。    如果date1在日历中比date2晚,那么MONTHS_BETWEEN()就返回一个正数。
    如果date1在日历中比date2早,那么MONTHS_BETWEEN()就返回一个负数。
    如果date1和date2日期一样,那么MONTHS_BETWEEN()就返回一个0。

       实验如下:

SQL> select months_between(to_date('2014-3-21','yyyy-mm-dd'), to_date('2014-1-10','yyyy-mm-dd')) months
  2  from dual;

    MONTHS
----------
2.35483871

SQL> select months_between(to_date('2014-1-10','yyyy-mm-dd'), to_date('2014-3-21','yyyy-mm-dd')) months
  2  from dual;

    MONTHS
----------
-2.3548387

SQL> select months_between(to_date('2014-1-10','yyyy-mm-dd'), to_date('2014-1-10','yyyy-mm-dd')) months
  2  from dual;

    MONTHS
----------
         0

--2014.3.21和2014.1.10之间,相差2个月加11天,11天按月换算成小数(在oracle里面,以31天为基数):
SQL> select 11/31 from dual;

     11/31
----------
 .35483871

      详细参见11.2联机文档:
      http://docs.oracle.com/cd/E11882_01/server.112/e41084/functions102.htm#SQLRF00669

        MONTHS_BETWEEN returns number of months between dates date1 and date2. The month and the last day of the month are defined by the parameter NLS_CALENDAR. If date1 is later than date2, then the result is positive. If date1 is earlier than date2, then the result is negative. If date1 and date2 are either the same days of the month or both last days of months, then the result is always an integer.Otherwise Oracle Database calculates the fractional portion of the result based on a31-day month and considers the difference in time components date1 and date2.

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158039.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Django(67)drf搜索过滤和排序过滤「建议收藏」

    Django(67)drf搜索过滤和排序过滤「建议收藏」前言当我们需要对后台的数据进行过滤的时候,drf有两种,搜索过滤和排序过滤。搜索过滤:比如我们想返回sex=1的,那么我们就可以从所有数据中进行筛选排序过滤:比如我们想对价格进行升序排列,就可以

    2022年7月29日
    7
  • pycharm安装、首次使用及汉化

    pycharm安装、首次使用及汉化一、下载pycharm安装包打开PyCharm的官方下载地址:http://www.jetbrains.com/pycharm/download/#section=windows打开网站后的界面展示如图:professional是专业版,可以免费试用,community是社区版,是免费开源的,推荐下载使用社区版。下载后的PyCharm:二、安装1.双击应用程序后点击【Next】…

    2022年5月26日
    45
  • javah是什么命令_SQL命令

    javah是什么命令_SQL命令今天看了《android框架揭秘》一书中的jni这块,按照书上的写法试了试javah命令,  今天通过javah生成h文件时遇到各种问题。不管是javah-classpath参数啊还是别的什么,一直都无法成功通过class文件生成h文件。  想了想应该是路径问题,现在终于成功编译出来了~  先在cmd命令行里面切换到工程的目录  调用javah命令时,j

    2022年9月24日
    1
  • 安卓设备修改屏幕像素密度以及查看屏幕分辨率

    安卓设备修改屏幕像素密度以及查看屏幕分辨率使用adb修改屏幕像素密度(此命令针对全志开发板子)adbshellamdisplay-density120{以下命令针对高通的开发板子}获取Android设备屏幕分辨率:adbshellwmsize获取android设备屏幕密度:adbshellwmdensity修改屏幕像素密度adbshellwmresize1920*1080adbshell…

    2022年6月5日
    144
  • string和stringbuffer的区别面试题_stringbuffer转为string

    string和stringbuffer的区别面试题_stringbuffer转为stringString和StringBuffer的区别String:是对象不是原始类型。为不可变对象,一旦被创建,就不能修改它的值。对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去。String是final类,即不能被继承。StringBuffer:是一个可变对象,当对它进行修改的时候不会像String那样重新建立对象。它只…

    2022年4月19日
    46
  • linux命令mysql启动,在linux中启动mysql服务的命令

    linux命令mysql启动,在linux中启动mysql服务的命令用reboot命令重启linux服务器之后会导致mysql服务终止,也就是mysql服务没有启动。必须要重启mysql服务,否则启动jboss时会报有关数据库mysql方面的错误。命令如下:第一步:安装mysql,设置mysql的安装路径:mysql_install_db–user=mysql–datadir=/home/ems/tmp/mysql/data命令说明:上面的db-use…

    2022年5月13日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号