城市猎人

在一网情深的日子里,谁能说得清是苦是甜,只知道确定了就义无反顾
posts - 1, comments - 7, trackbacks - 0, articles - 89

oracle中日期和时间的操作

Posted on 2008-07-24 20:41 sailor 阅读(306) 评论(0)  编辑  收藏 所属分类: oracle
oracle中日期和时间的操作

来源:http://sail2000.itpub.net/post/558/7243

本人一直oracle 日期操作使用很模糊,现总结如下:

1,date 类型
date为oracle中的一个字段类型,日期类型。该字段类型不仅指日期还表示具体的时间。如2001年11月4日 20点43分
2、转换函数
与date操作关系最大的就是两个转换函数:to_date(),to_char()
to_date() 作用将字符类型按一定格式转化为日期类型:
具体用法:to_date('2004-11-27','yyyy-mm-dd'),前者为字符串,后者为转换日期格式,注意,前后两者要以一对应。
如;to_date('2004-11-27 13:34:43', 'yyyy-mm-dd hh24:mi:ss') 将得到具体的时间

多种日期格式:

YYYY:四位表示的年份
YYY,YY,Y:年份的最后三位、两位或一位,缺省为当前世纪
MM:01~12的月份编号
MONTH:九个字符表示的月份,右边用空格填补
MON:三位字符的月份缩写
WW:一年中的星期
D:星期中的第几天
DD:月份中的第几天
DDD:所中的第几天
DAY:九个字符表示的天的全称,右边用空格补齐
HH,HH12:一天中的第几个小时,12进制表示法
HH24:一天中的第几个小时,取值为00~23
MI:一小时中的分钟
SS:一分钟中的秒
SSSS:从午夜开始过去的秒数

to_char():将日期转按一定格式换成字符类型
SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') time from dual;

TIME
-------------------
2004-10-08 15:22:58

即把当前时间按yyyy-mm-dd hh24:mi:ss格式转换成字符类型

sysdate也是个特殊类型函数,该函数返回当前系统时间,在程序中应用比较频繁。

3、设置系统默认时间格式
在实际应用中,利用to_char()函数转换可能是很繁琐的事情。可以在系统中设置
时间默认格式

会话级: alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
实例级;alter system set nls_date_format='yyyy-mm-dd hh24:mi:ss' scope=spfile';

SQL> select sysdate from dual;

SYSDATE
-------------------
2004-10-08 15:35:33

可以看到具体时间格式已经更改.

只有注册用户登录后才能发表评论。


网站导航: