全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Oracle计算时间差常用函数

两个Date类型字段:START_DATE,END_DATE,计算这两个日期的时间差(分别以天,小时,分钟,秒,毫秒):

天:

ROUND(TO_NUMBER(END_DATE - START_DATE))

小时:

ROUND(TO_NUMBER(END_DATE - START_DATE) * 24)

分钟:

ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60)

秒:

ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60)

毫秒:

ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60 * 1000)
 

Oracle计算时间差函数 2008-08-20 10:00 两个Date类型字段:START_DATE,END_DATE,计算这两个日期的时间差(分别以天,小时,分钟,秒,毫秒): 天:

ROUND(TO_NUMBER(END_DATE - START_DATE)) 小时: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24) 分钟: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60) 秒: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60) 毫秒: ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60 * 1000)

外加to_date与to_char函数:

ORACLE中:

select to_date('2007-06-28 19:51:20','yyyy-MM-dd HH24:mi:ss') from dual;

一般SQL中:

select to_date('2007-06-28 19:51:20','yyyy-MM-dd HH:mm:ss') from dual;

区别:

1、HH修改为HH24。

2、分钟的mm修改为mi。

24 小时的形式显示出来要用 HH24

select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;
select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;
to_date() function

1. 日期格式参数 含义说明

D 一周中的星期几

DAY 天的名字,使用空格填充到 9 个字符

DD 月中的第几天

DDD 年中的第几天

DY 天的简写名

IW ISO 标准的年中的第几周

IYYY ISO 标准的四位年份

YYYY 四位年份

YYY,YY,Y 年份的最后三位,两位,一位

HH 小时,按 12 小时计

HH24 小时,按 24 小时计

MI 分

SS 秒

MM 月

Mon 月份的简写

Month 月份的全名

W 该月的第几个星期

WW 年中的第几个星期      1. 日期时间间隔操作

当前时间减去 7 分钟的时间

select sysdate,sysdate - interval '7' MINUTE from dual

当前时间减去 7 小时的时间

select sysdate - interval '7' hour from dual

当前时间减去 7 天的时间

select sysdate - interval '7' day from dual

当前时间减去 7 月的时间

select sysdate,sysdate - interval '7' month from dual

当前时间减去 7 年的时间

select sysdate,sysdate - interval '7' year from dual

时间间隔乘以一个数字

select sysdate,sysdate - 8 *interval '2' hour from dual

2. 日期到字符操作

select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual

select sysdate,to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual

select sysdate,to_char(sysdate,'yyyy-ddd hh:mi:ss') from dual

select sysdate,to_char(sysdate,'yyyy-mm iw-d hh:mi:ss') from dual

参考 oracle 的相关关文档 (ORACLE901DOC/SERVER.901/A90125/SQL_ELEMENTS4.HTM#48515)

3. 字符到日期操作

select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual

具体用法和上面的 to_char 差不多。

4.TO_NUMBER

使用TO_NUMBER函数将字符转换为数字

TO_NUMBER(char[, '格式'])

数字格式格式

9 代表一个数字

0 强制显示0

$ 放置一个$符

L 放置一个浮动本地货币符

.显示小数点

,显示千位指示符

oracle中的to_date参数含义 

  1.日期格式参数含义说明 

D 一周中的星期几 

DAY 天的名字,使用空格填充到9个字符 

DD 月中的第几天 

DDD 年中的第几天 

DY 天的简写名 
IW ISO标准的年中的第几周 
IYYY ISO标准的四位年份 

YYYY 四位年份 

YYY,YY,Y 年份的最后三位,两位,一位 

HH 小时,按12小时计 

HH24 小时,按24小时计 

MI 分 

SS 秒 

MM 月 

Mon 月份的简写 

Month 月份的全名 

W 该月的第几个星期 

WW 年中的第几个星期     1.日期时间间隔操作

当前时间减去7分钟的时间

select sysdate,sysdate - interval '7' MINUTE from dual

当前时间减去7小时的时间

select sysdate - interval '7' hour from dual

当前时间减去7天的时间

select sysdate - interval '7' day from dual

当前时间减去7月的时间

select sysdate,sysdate - interval '7' month from dual

当前时间减去7年的时间

select sysdate,sysdate - interval '7' year from dual

时间间隔乘以一个数字

select sysdate,sysdate - 8 *interval '2' hour from dual

   2.日期到字符操作

select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual
select sysdate,to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual
select sysdate,to_char(sysdate,'yyyy-ddd hh:mi:ss') from dual
select sysdate,to_char(sysdate,'yyyy-mm iw-d hh:mi:ss') from dual

参考oracle的相关关文档(ORACLE901DOC/SERVER.901/A90125/SQL_ELEMENTS4.HTM#48515)

   3. 字符到日期操作

select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual

具体用法和上面的to_char差不多。

   4. trunk/ ROUND函数的使用

select trunc(sysdate ,'YEAR') from dual
select trunc(sysdate ) from dual
select to_char(trunc(sysdate ,'YYYY'),'YYYY') from dual

   5.oracle有毫秒级的数据类型

--返回当前时间 年月日小时分秒毫秒

select to_char(current_timestamp(5),'DD-MON-YYYY HH24:MI:SSxFF') from dual;

--返回当前时间的秒毫秒,可以指定秒后面的精度(最大=9)

select to_char(current_timestamp(9),'MI:SSxFF') from dual;

   6.计算程序运行的时间(ms)

declare
type rc is ref cursor;
l_rc rc;
l_dummy all_objects.object_name%type;
l_start number default dbms_utility.get_time;
begin
 for I in 1 .. 1000 loop
 open l_rc for 'select object_name from all_objects '|| 'where object_id = ' || i;
 fetch l_rc into l_dummy;
 close l_rc;
 end loop;
 dbms_output.put_line ( round( (dbms_utility.get_time-l_start)/100, 2 ) ||' seconds ...' );
end;

总结

以上就是本文关于Oracle计算时间差常用函数的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅:oracle 虚拟专用数据库详细介绍   oracle 数据库启动阶段分析   Oracle RMAN自动备份控制文件方法介绍等。感谢大家对的支持!


# oracle  # 计算时间差函数  # mysql计算时间差函数  # 数据库计算时间差的三种函数和方法实例代码  # 时计  # 几个  # 年中  # 几天  # 四位  # 两位  # 这两个  # 月中  # 几周  # 文档  # 感兴趣  # 要用  # 详细介绍  # 转换为  # 感谢大家  # 自动备份  # sysdate  # strong  # function  # RMAN 


相关文章: 专业网站建设制作报价,网页设计制作要考什么证?  如何在IIS7中新建站点?详细步骤解析  制作旅游网站html,怎样注册旅游网站?  建站VPS能否同时实现高效与安全翻墙?  如何在香港免费服务器上快速搭建网站?  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  建站之星会员如何解锁更多建站功能?  如何快速搭建虚拟主机网站?新手必看指南  创业网站制作流程,创业网站可靠吗?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  电商平台网站制作流程,电商网站如何制作?  已有域名如何免费搭建网站?  沈阳制作网站公司排名,沈阳装饰协会官方网站?  建站之星后台密码遗忘或太弱?如何重置与强化?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  如何选择域名并搭建高效网站?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何选择高效稳定的ISP建站解决方案?  北京网站制作的公司有哪些,北京白云观官方网站?  设计网站制作公司有哪些,制作网页教程?  建站主机选哪家性价比最高?  动图在线制作网站有哪些,滑动动图图集怎么做?  智能起名网站制作软件有哪些,制作logo的软件?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?    如何在西部数码注册域名并快速搭建网站?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  如何用西部建站助手快速创建专业网站?  小型网站建站如何选择虚拟主机?  微信小程序 五星评分(包括半颗星评分)实例代码  香港服务器如何优化才能显著提升网站加载速度?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  子杰智能建站系统|零代码开发与AI生成SEO优化指南  建站之星如何通过成品分离优化网站效率?  网站制作价目表怎么做,珍爱网婚介费用多少?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  临沂网站制作企业,临沂第三中学官方网站?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  建站之星logo尺寸如何设置最合适?  公司门户网站制作流程,华为官网怎么做?  MySQL查询结果复制到新表的方法(更新、插入)  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  建站主机选虚拟主机还是云服务器更好?  如何将凡科建站内容保存为本地文件?  学校免费自助建站系统:智能生成+拖拽设计+多端适配  潮流网站制作头像软件下载,适合母子的网名有哪些?  太平洋网站制作公司,网络用语太平洋是什么意思?  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。