• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >oracle > Oracle计算时间差为毫秒的实现代码

Oracle计算时间差为毫秒的实现代码

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了oracle毫秒转换成时间,oracle时间精确到毫秒,oracle 时间格式 毫秒,oracle时间毫秒,oracle 毫秒等相关知识,希望本文的分享对您有所帮助

Oracle 中我们知道用 TO_DATE 函数可以进行秒、分、时、天、月、年、周等时间差的计算,但是毫秒却不好计算,TO_DATE 函数只能精确到秒,毫秒则只能用 TO_TIMESTAMP 函数,但是这个函数不像 TO_DATE 这样直接减出来的差值就是 NUMBER 类型,如果用 TO_NUMBER 函数转换也会报错。

这里我是用分隔字符串单独计算毫秒部分,如果有更好的办法,请大家分享一下,下面是查询时间差为毫秒的模板(字段1 – 字段2):

SELECT 
(
 (
  (TO_TIMESTAMP(字段1, 'YYYY-MM-DD HH24:MI:SS.FF9') + 0)
  -
  (TO_TIMESTAMP(字段2, 'YYYY-MM-DD HH24:MI:SS.FF9') + 0)
 ) * 24 * 60 * 60
 +
 TO_NUMBER
 (
  '0' ||
  (
    TO_NUMBER(SUBSTR(字段1, INSTR(字段1, '.'))) 
    - 
    TO_NUMBER(SUBSTR(字段2, INSTR(字段2, '.')))
  )
 )
) * 1000
FROM 表名
</div>

这里是相差的毫秒数,如果需要显示小数的秒请删除 “( ) * 1000”这部分,下面是个测试代码,直接运行:

SELECT 
(
 (
  (TO_TIMESTAMP('2016-04-13 17:13:50.998', 'YYYY-MM-DD HH24:MI:SS.FF9') + 0)
  -
  (TO_TIMESTAMP('2016-04-13 17:13:47.235', 'YYYY-MM-DD HH24:MI:SS.FF9') + 0)
 ) * 24 * 60 * 60
 +
 TO_NUMBER
 (
  '0' ||
  (
    TO_NUMBER(SUBSTR('2016-04-13 17:13:50.998', INSTR('2016-04-13 17:13:50.998', '.'))) 
    - 
    TO_NUMBER(SUBSTR('2016-04-13 17:13:47.235', INSTR('2016-04-13 17:13:50.235', '.')))
  )
 )
) * 1000
FROM DUAL
</div>

结果为:3763

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Oracle计算时间差为毫秒的实现代码
  • ORACLE 毫秒与日期的相互转换示例

相关文章

  • 2017-05-11彻底删除Oracle数据库的方法
  • 2017-05-11oracle使用sql脚本生成csv文件案例学习
  • 2017-05-11Oracle数据库中的控制文件管理以及常用参数设置
  • 2017-05-11Oracle中备份表的简单sql命令语句
  • 2017-05-11oracle下巧用bulk collect实现cursor批量fetch的sql语句
  • 2017-05-11Excel VBA连接并操作Oracle
  • 2017-05-11Oracle数据库opatch补丁操作流程
  • 2017-05-11And,Where使用提示以及用+进行左关联的提示及注意事项
  • 2017-05-11Oracle中查看正在运行的SQL进程脚本分享
  • 2017-05-11Oracle Connect to Idle Instance解决方法

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • [Oracle] 解析在没有备份的情况下undo损坏怎么办
    • 记一次Oracle数据恢复过程
    • oracle如何使用java source调用外部程序
    • oracle 树查询 语句
    • AWR 深入分析( Automatic Workload Repository )
    • Oracle一个用户如何访问其它用户的表应用指南
    • ORA-00392ORA-00312日志正在清除故障
    • oracle下加密存储过程的方法
    • Oracle 手动创建数据库步骤详解
    • oracle to_char函数将number转成string

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有