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 ....

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐