首页 > 学院 > 开发设计 > 正文

plsql 时间处理

2019-11-08 20:48:42
字体:
来源:转载
供稿:网友

时间类型

plsql提供了两种和时间相关的数据类型:datetime 和 intertime

时间相关的函数、操作

获取当前时间select sysdate from dual; --output 2017/2/9 12:20:53 (数据库的lang为ZHS)select trunc(sysdate) from dual; --2017/2/9与字符串之间的格式转换select tochar(sysdate,'yyyy-mm-dd hh24:mi:ss') from daul; -- 2017-02-09 12:24:38select to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual; -- 2017-02-09 12:24:57select to_char(sysdate,'yyyy-mm-dd hh:mi:ss ww d') from dual; -- 2017-02-09 12:38:57 06 5 表示当前年的第6周,第5天。 更多的FORMAT可参考官网手册与时间相关的函数select add_months(sysdate,12) from dual; --2018/2/9 12:27:43select last_day(sysdate) from dual; -- 2017/2/28 12:28:33select months_between(sysdate, sysdate - 31) from dual; --31select next_day(sysdate,'星期一')from dual; --2017/2/13 12:36:15 用于计算X时间后第一个星期Y的时间。Y是一个字符串,表示用当前会话语言表示的一周中某一天的全称(如星期一、星期二等),也可以是数值。英语环境为monday tuesday wednesday thursday friday saturday sunday ;select round(to_number(sysdate - (sysdate-1))*24*60) from dual; --1440 分钟 默认按照天数来计算时间戳 时间戳是date类型的扩展,比date记录更精确的时间(更多的秒位).Oracle的timestamp的默认时间精度是微秒(p=6),而Oracle能记录到(p=9)也就是纳秒。可用于数据库回滚、对时间要求比较高的地方。select current_timestamp from dual; -- 09-2月 -17 12.45.22.716437 下午 +08:00 当前会话的select systimestamp from dual; --09-2月 -17 12.46.58.476939 下午 +08:00 当前系统的Flashback table students to timestamp to_timestamp ('2018/2/9 12:27:43','mm/dd/yyyy hh24:mi:ss'); job计划DBMS_JOB.SUBMIT( job OUT BINARY_INTEGER, --job号 what IN VARCHAR2, NEXT_DATE IN DATE DEFAULTSYSDATE, interval IN VARCHAR2 DEFAULT 'NULL', no_parse IN BOOLEAN DEFAULT FALSE, instance IN BINARY_INTEGER DEFAULT ANY_INSTANCE, force IN BOOLEAN DEFAULT FALSE);

参考列表

回滚表操作 http://blog.csdn.net/zjliu1984/article/details/4293589日期函数、类型 http://www.yiibai.com/plsql/plsql_date_time.htmljob 官方参考手册 https://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_job.htm#i1001473
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表