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. 暴力 BestCoder Round #41 1001 ZCC loves straight flush

    题目传送门 /* m数组记录出现的花色和数值,按照数值每5个搜索,看看有几个已满足,剩下 5 - cnt需要替换 ╰· */ #include <cstdio> #include < ...

  2. 18.5.2动态代理和AOP

    ----此处是JDK动态代理----package d18_5_2; public interface IDog { void info(); void run(); } package d18_5_ ...

  3. iOS开发XML解析

    xml解析主要可以使用CData,libxml2以及NSXMLParser,以下对各个方法给出了相应的例子: 1.CDataXML: 1.1.创建FKBook类 #import <Foundat ...

  4. DDR SDRAM

    DDR SDRAM(Double Data Rate SDRAM)是一种高速CMOS.动态随机访问存储器, 它采用双倍数据速率结构来完成高速操作.应用在高速信号处理系统中, 需要缓存高速.大量的数据的 ...

  5. laravel之伪造跨站请求保护CSRF实现机制

    Laravel 提供了简单的方法使你的应用免受 跨站请求伪造 (CSRF) 的袭击.跨站请求伪造是一种恶意的攻击,它凭借已通过身份验证的用户身份来运行未经过授权的命令. Laravel 为每个活跃用户 ...

  6. SQL——将两列合并成一列

    将两列合并连接成一列,需要注意的是列的格式必须是NVARCHAR或者VARCHAR类型 ), call_uuid, ) +','+agent_code '   PerDate 1 ,980408102 ...

  7. 在windows上安装Jenkins---tomcat流

    在windows上安装Jenkins有两种方式: (1)jar流 在命令行中运行:java -jar jenkins.war 浏览器访问 localhost:8080,创建初始管理员帐号即可. (2) ...

  8. 洛谷 P1413 坚果保龄球

    题目描述 PVZ这款游戏中,有一种坚果保龄球.zombie从地图右侧不断出现,向左走,玩家需要从左侧滚动坚果来碾死他们. 我们可以认为地图是一个行数为6,列数为60的棋盘.zombie出现的那一秒站在 ...

  9. Angular和SAP C4C的事件处理队列

    Angular 我们在Angular框架的代码里能看到一个名为processQueue的函数: 这个函数是通过$scope.$apply启动的: 核心代码位于一个for循环里,循环体是一个存储异步处理 ...

  10. SQL Server数据库锁机制及类型

    原文地址:http://blog.csdn.net/zp752963831/article/details/3906477