您的位置:首页 > 数据库 > Oracle

Oracle数据库的时间格式和Jave时间格式区别总结

2013-08-08 00:00 106 查看
一、Oracle时间格式的SQL语句

--12小时制系统当前时间(上午)

SQL>select to_char(sysdate,'YYYY-MM-DD HH12:MI:SS AM')from dual;

--24小时制系统当前时间(下午)

SQL> select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS PM')from dual;

--当前时间的后一天时间

select to_char(Sysdate+1,'YYYY-MM-DD HH24:MI:SS')from dual;

--当前时间的后一个小时

select to_char(Sysdate+1/24,'HH24:MI:SS')from dual;

--当前时间的前一分钟

select to_char(Sysdate-1/21/60,'HH24:MI:SS')from dual;

--拿到某时间点之后的数据(做增量操作很有用) Date 类型时间

select * from T_TABLE where LAST_MODIFY_TIME>TO_DATE('2013-05-08 14:34:45', 'yyyy-mm-dd hh24:mi:ss')

--TIMESTAMP 时间戳类型的时间

select * from T_TABLE where UPDATED_TIME > TO_TIMESTAMP('2013-08-08 13:30:00','yyyy-mm-dd hh24:mi:ss.ff')

--MySql的 Timestamp时间类型last_modified ,datetime类型

select * from t_XXXX where last_modified>'2013-03-07 15:31:43'

--Oracle中插入带时间戳字段的数据

insert into T_XXX (name1,name2,update_time) values (?,?,Sysdate); //update_time为Timestamp类型 Sysdate:系统当前时间

--插入带时间字段 to_date( ),TO_TIMESTAMP( )

insert into T_XXX (name1,name2,update_time) values (?,?,to_date('2013-2-28 15:42:56','yyyy-mm-dd hh24:mi:ss');

insert into T_XXX (name1,name2,last_modify_time) values (?,?,TO_TIMESTAMP('2013-08-08 14:30:00','yyyy-mm-dd hh24:mi:ss.ff'));

--时间格式参数说明

Year:
yy two digits 两位年 显示值:07
yyy three digits 三位年 显示值:007
yyyy four digits 四位年 显示值:2007
Month:
mm number 两位月 显示值:11
mon abbreviated 字符集表示 显示值:11月,若是英文版,显示nov
month spelled out 字符集表示 显示值:11月,若是英文版,显示november
Day:
dd number 当月第几天 显示值:02
ddd number 当年第几天 显示值:02
dy abbreviated 当周第几天简写 显示值:星期五,若是英文版,显示fri
day spelled out 当周第几天全写 显示值:星期五,若是英文版,显示friday
ddspth spelled out, ordinal twelfth
Hour:
hh two digits 12小时进制 显示值:01
hh24 two digits 24小时进制 显示值:13
Minute:
mi two digits 60进制 显示值:45
Second:
ss two digits 60进制 显示值:25
其它
Q digit 季度 显示值:4
WW digit 当年第几周 显示值:44
W digit 当月第几周 显示值:1
24小时格式下时间范围为: 0:00:00 - 23:59:59....
12小时格式下时间范围为: 1:00:00 - 12:59:59 ....

二、Java中的时间格式 SimpleDateFormat类

SimpleDateFormat CeshiFmt0=new SimpleDateFormat("Gyyyy年MM月dd日 HH时mm分ss秒");

SimpleDateFormat CeshiFmt1=new SimpleDateFormat("yyyy/MM/dd HH:mm");

SimpleDateFormat CeshiFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

SimpleDateFormat CeshiFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");

SimpleDateFormat CeshiFmt4=new SimpleDateFormat("yyyy/MM/dd E");

SimpleDateFormat CeshiFmt5=new SimpleDateFormat(

"一年中的第 D 天 ,第w个星期 ,一个月中第W个星期 ,k时 z时区");

Date now=new Date();

依次显示的效果:

公元2010年07月27日 09时19分29秒

2010/07/27 09:19

2010-07-27 09:19:29

2010年07月27日 09时19分29秒 星期二

2010/07/27 星期二

一年中的第 208 天 ,第31个星期 ,一个月中第5个星期 ,9时 CST时区

参数说明

字母 日期或时间元素 表示 示例
G Era 标志符 Text AD
y 年 Year 1996; 96
M 年中的月份 Month July; Jul; 07
w 年中的周数 Number 27
W 月份中的周数 Number 2
D 年中的天数 Number 189
d 月份中的天数 Number 10
F 月份中的星期 Number 2
E 星期中的天数 Text Tuesday; Tue
a Am/pm 标记 Text PM
H 一天中的小时数(0-23) Number 0
k 一天中的小时数(1-24) Number 24
K am/pm 中的小时数(0-11) Number 0
h am/pm 中的小时数(1-12) Number 12
m 小时中的分钟数 Number 30
s 分钟中的秒数 Number 55
S 毫秒数 Number 978
z 时区 General time zone Pacific Standard Time; PST; GMT-08:00
Z 时区 RFC 822 time zone -0800
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐