`
zhangziyangup
  • 浏览: 1124538 次
文章分类
社区版块
存档分类
最新评论

oracle中将number类型毫秒值转为时间类型

 
阅读更多

在搞数据库时,发现有这样的一个字段,类型是NUMBER(38),查看了一下里面的数据,都是这样的,

1323957678114
1321326994295
1322129306804
1322129716220

猜到应该是1970年1月1号0点0分距现在的毫秒值。

解决办法是写一个转换函数:

create or replace function num_to_date(in_number NUMBER) return date is
begin
return(TO_DATE('19700101','yyyymmdd')+ in_number/86400000+TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))/24 );
end num_to_date;

其中:加上TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))/24的用意为加上当地时区的的时间差,咱们是东八区TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))的值为8,除以24得到天。

然后使用函数就可以了

select num_to_date(t.actingtime) from 表名 t;

分享到:
评论

相关推荐

    使用oracle计算系统当前时间的毫秒数

    ### 使用Oracle计算系统当前时间的毫秒数 在IT领域,特别是数据库管理和应用程序开发中,时间戳是非常重要的数据类型之一。它可以用来记录事件的发生时间、处理时间等关键信息。对于Oracle数据库用户而言,有时需要...

    Oracle数据类型之Number

    ### Oracle 数据类型之 Number #### 一、概述 在Oracle数据库中,`NUMBER`类型是一种极为重要的数值数据类型,主要用于存储各种数值数据。随着Oracle版本的发展,为了更好地满足用户需求和提升性能,Oracle在其...

    毫秒与时间互相转换-精确到毫秒

    功能:将1970-01-01 00:00:00以来的毫秒数转换为对应的timestamp时间类型,精确保留毫秒级精度! 参数:I_MILLISECONDS NUMBER 待转换的毫秒数 示例:select MILLISECONDS2TIMESTAMP(1397457489296) from dual; ...

    ORACLE 自动类型转换

    Oracle数据库支持多种数据类型,如数值型(NUMBER、INTEGER、BINARY_INTEGER等)、字符型(VARCHAR2、CHAR、CLOB等)、日期时间型(DATE、TIMESTAMP等)以及二进制数据类型(RAW、BLOB等)。在某些情况下,当不同...

    Oracle与.Net 数据类型映射

    3. **日期/时间类型**:DateTime对应Oracle的DATE,DateTimeOffset对应TIMESTAMP WITH TIME ZONE,TimeSpan对应INTERVAL DAY TO SECOND。 4. **二进制数据类型**:byte[]对应BLOB,System.IO.FileStream或其他流...

    oracle字段类型转换的处理

    Oracle数据库支持多种数据类型,包括数值类型(如NUMBER、INTEGER、BINARY_FLOAT等)、字符类型(如VARCHAR2、CHAR、CLOB等)、日期时间类型(如DATE、TIMESTAMP等)以及二进制类型(如RAW、BLOB等)。在实际应用中...

    Oracle与DB2数据类型分类对应说明

    在本文中,我们将对 Oracle 和 DB2 的数据类型进行分类和对应说明,主要包括数值类型、日期时间类型、字符串类型、LOB 类型和 ROWID 类型等。 一、数值类型 Oracle 中的 NUMBER 类型可以对应 DB2/400 中的多种类型...

    oracle基本数据类型

    Oracle 中有多种数字类型,包括 number、integer 等。 * number(m,n):可变长的数值列,允许 0、正值及负值。m 是所有有效数字的位数,n 是小数点以后的位数。 number 类型的数字可以表示各种数字类型,包括整数...

    oracle-java数据类型1

    例如,当你从数据库查询数据时,需要知道如何将 Oracle 的 `NUMBER` 类型转换为 Java 中的 `BigDecimal`,或者如何处理 `TIMESTAMP` 类型以考虑时区信息。理解这些细节将确保数据的准确性和应用程序的兼容性。

    Oracle与DB2数据类型的分类对应说明

    NUMBER 类型的对应关系取决于 Oracle 中 NUMBER 类型的定义和所占用的存储空间。 四、LOB 类型 Oracle 中的 BLOB 类型可以对应 DB2 的 BLOB 类型,用于存储大型二进制数据。 Oracle 中的 CLOB 类型可以对应 DB2 的...

    oracle时间和秒之间相互转换

    为了将当前时间转换为相对于1970-01-01的时间差值(毫秒),我们可以使用以下方法: 1. **计算时间差**:首先,我们需要计算当前时间与1970-01-01之间的差值。 2. **转换为毫秒**:接着,我们将这个差值转换为毫秒...

    java与oracle等数据库类型对应

    本文主要探讨的是Java与Oracle数据库之间数据类型的映射关系,特别是针对"Number"和"Date"类型。 首先,让我们关注Oracle中的"Number"类型。Oracle的"Number"是一种可以存储整数和浮点数的通用数值类型。它分为两种...

    sql server 和oracle 中数据类型的区别

    3. **bit**: 用于存储布尔值或单个位的信息,在SQL Server中占1个字节,而Oracle中的对应类型为`NUMBER(2)`。 4. **char**: 固定长度的字符类型,例如`char(10)`表示存储10个字符,在Oracle中对应的是`CHAR(10)`。 5...

    java、mysql以及oracle数据类型对照表

    值得注意的是,Oracle的DATE类型包含了日期和时间,而MySQL通常需要单独的DATE和TIME类型来处理日期和时间。 Java与数据库交互时,通常使用PreparedStatement和ResultSet接口,它们将Java对象转换为数据库数据类型...

    Oracle与DB2数据类型的对应说明书

    具体的对应关系取决于Oracle中的NUMBER类型将用于保存什么类型的数据,是整型还是带有小数位的实型数据。此外,还要考虑类型所占用的存储空间。 四、ROW和LOB类型 DB2/400提供VARCHAR和CLOB与Oracle中的RAW和LONG ...

    ORACLE_NUMBER类型Scale为0引发的问题

    摘要: 遇到了一个很有意思的NUMBER类型Scale引发的问题,我用一个简单的测试用例来展示一下这个案例。假如有个TEST的表,有个字段类型为NUMBER,我插入下面两条数据 CREATE TABLE TEST ( Category VARCHAR(12), ...

    ORACLE 毫秒与日期的相互转换示例

    在Oracle数据库中,日期和时间数据类型的处理是日常开发和查询中的常见操作。有时,我们需要将日期转换为毫秒,或者反过来,将毫秒转换为日期。这在处理时间戳或者进行精确的时间计算时尤其重要。本文将详细介绍如何...

Global site tag (gtag.js) - Google Analytics