Oracle中有关日期的语法

Oracle提供了丰富的日期函数。利用日期函数可以灵活的对日期进行运算。

to_date()函数——将字符串转换为日期型

to_date()函数用于将字符串转换为日期。被转换的字符串必须符合特定的日期格式。

select to_date('12/02/09', 'mm/dd/yy') result from dual;

add_months()函数——为日期加上特定月份

add_months()函数将为日期添加特定月份,并获得新的日期。

select to_char(add_months(sysdate, 2), 'yyyy-mm-dd') result from dual;

last_day()函数——返回特定日期所在月的最后一天

last_day()函数将接受一个日期参数。该函数首先获得日期参数所在月的信息,然后获得该月最后一天的日期。

select to_char(last_day(sysdate), 'yyyy-mm-dd') result from dual;

可以综合利用add_months()函数来获得若干月之后的月份的最后一天。

select to_char(last_day(add_months(sysdate, 3)), 'yyyy-mm-dd') result from dual;

months_between ()函数——返回两个日期所差的月数

months_between()函数用于获取两个日期所间隔的月数。该函数的返回值是一个实数。

select months_between(sysdate, to_date('2009-02-08', 'yyyy-mm-dd')) result from dual;

当第一个日期早于第二个日期,那么返回值将是负值。

select months_between(to_date('2009-02-08', 'yyyy-mm-dd'), to_date('2009-03-08', 'yyyy-mm-dd')) result from dual;

current_date()函数——返回当前会话时区的当前日期

current_date()函数用于返回当前会话时区的当前日期。

select sessiontimezone, to_char(current_date, 'yyyy-mm-dd hh:mi:ss') result from dual;

注意与说明:current_date等无参数函数作为Oracle的关键字存在。在使用时,不能为其添加小括号。即select current_date() from dual是错误的SQL语句。

current_timestamp()函数——返回当前会话时区的当前时间戳

current_timestamp()函数用于返回当前会话时的区时间戳。可以结合sessiontimezone来查看其用法。

select sessiontimezone, current_timestamp from dual;

extract()函数——返回日期的某个域

日期由若干域组成,例如年、月、日、小时等等。extract()函数可以返回这些域的具体值。为了使用该函数,除了要指定原日期外,还应该指定要返回的域名。

select extract(year from sysdate) result from dual;

需要注意的是,year、month、day域只能从日期(如sysdate)中获得,而hour、minute、second只能从时间型(如systimestamp)中获得。

Oracle中有关日期的语法的更多相关文章

  1. oracle 中SQL 语句开发语法 SELECT INTO含义

    oracle 中SQL 语句开发语法 SELECT INTO含义 在ORACLE中SELECT INTO是如何使用的,什么意思?和SQL SERVER的不一样?   和sqlserver的不一样sql ...

  2. Oracle中的日期数据类型

    TimeStamp日期类型 TimeStamp数据类型用于存储日期的年.月.日,以及时间的小时.分和秒,其中秒值精确到小数点后6位,该数据类型 同时包含时区信息.systimestamp函数的功能是返 ...

  3. Oracle中的日期处理方法

    日期处理方法                                                        当前日期和时间 Select sysdate from dual; 本月最后 ...

  4. Oracle中的日期和字符串互相转换

    转载出处:http://blog.sina.com.cn/s/blog_44a005380100k6rv.html TO_DATE格式(以时间:2007-11-02   13:45:25为例)    ...

  5. oracle中的日期函数的使用

    TO_DATE格式(以时间:2007-11-02   13:45:25为例) Year:               yy two digits 两位年                显示值:07   ...

  6. Oracle中与日期时间有关的运算函数

    1            ADD_MONTHS 格式:ADD_MONTHS(D,N) 说明:返回日期时间D加N月后对应的日期时间.N为正时则表示D之后:N为负时则表示为D之前:N为小数则会自动先删除小 ...

  7. 转:Oracle中的日期和字符串互相转换

    TO_DATE格式(以时间:2007-11-02   13:45:25为例)          Year:             yy two digits 两位年                显 ...

  8. Oracle中的日期

    --1.日期字符转换函数的用法 /****************************TO_CHAR********************************/ -------------- ...

  9. Oracle中的日期加减

    加法   select sysdate,add_months(sysdate,12) from dual;        --加1年 select sysdate,add_months(sysdate ...

随机推荐

  1. cordova 安卓项目打包 release安装包

    问题描述: 打包安卓项目, 如果是在项目中只是使用debug包的话, 其中的签名方式使用的都是cordova框架本身, 那么每次打包的话, 都会把之前的安装包给覆盖掉. 现在打包做出一个release ...

  2. iphone6,键盘收起,H5页面下面出现空白

  3. Java 修改编码格式的几种方式

    1.工作空间 workspase Window→Preferences→General→Workspace→Text file encoding→other→UTF-8 2.项目编码格式 右键项目名→ ...

  4. 149 Max Points on a Line 直线上最多的点数

    给定二维平面上有 n 个点,求最多有多少点在同一条直线上. 详见:https://leetcode.com/problems/max-points-on-a-line/description/ Jav ...

  5. HDU 1221 Rectangle and Circle 考虑很多情况,good题

    http://acm.hdu.edu.cn/showproblem.php?pid=1221 114 92 31 95 13 96 3 这题只需要判断圆和矩形是否相交,然后在里面是不算相交的. 那么就 ...

  6. python中函数参数

    默认参数注意点 优点:灵活,当没有指定与形参对应的实参时就会使用默认参数 缺陷: 例子: >>> def h(m, l=[]):                    #默认参数时列 ...

  7. Java中“==”的使用,以及“==”和equal的比较

    int i02=59 ,这是一个基本类型,存储在栈中. Integer i03 =Integer.valueOf(59); 因为 IntegerCache 中已经存在此对象,所以,直接返回引用. In ...

  8. mybatis javaConfig实现

    @Bean public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception { SqlSessio ...

  9. 使用ant build build.xml报“includeantruntime was not set”警告及"Class not found: javac1.8"问题

    问题1:ant编译build.xml报“includeantruntime was not set”警告. 警告详情: warning: 'includeantruntime' was not set ...

  10. List<DTO>转 Map<String,List<DTO>> 两种写法

    List<TeamScheduleDTO> list = JSON.parseArray(response.getData().getJSONArray("list") ...