Quantcast
Channel: 容器云计算,Devops,DBA,网络安全。
Viewing all articles
Browse latest Browse all 780

oracle数据库时间戳转换成日期时间方法

$
0
0

oracle数据库时间戳转换成日期时间方法


时间戳是自 1970 年 1 月 1 日(00:00:00 GMT)以来的秒数。它也被称为 Unix 时间戳(Unix Timestamp)。

Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,

定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。

Unix时间戳不仅被使用在Unix系统、类Unix系统中,也在许多其他操作系统中被广泛采用。

北京时间是东8区,所以要加8小时。


1, 现在需要将oracle数据库中的表中的时间戳字段转换成北京时间的日期时间格式,表格如下图。

       COMPANY_NAME    BILL_NUM    STARTTIME    
1    随州市甜蜜食品厂    9002254531    1370769194    

使用下面方法可以转换。

SELECT c.company_name,c.bill_num,c.starttime,TO_CHAR(c.starttime / (60 * 60 * 24) +
               TO_DATE('1970-01-01 08:00:00', 'YYYY-MM-DD HH:MI:SS'),
               'YYYY-MM-DD HH24:MI:SS') AS DAY_time

  FROM te_company c

下面是转换的结果图:

       COMPANY_NAME    BILL_NUM    STARTTIME       DAY_time
1    随州市甜蜜食品厂    9002254531    1370769194    2013-06-09 17:13:14


2,利用自建函数把时间戳转换成北京日期。

创建转换函数FUN_UTC2STRING

create or replace function FUN_UTC2STRING(UTCDATE NUMBER, PATTERN VARCHAR2)
  return varchar2 is
  Result varchar2(19);
begin
  Result := TO_CHAR(TO_DATE(19700101000000, 'YYYYMMDDHH24MISS') +
                    (UTCDATE + 8 * 3600) / 86400,
                    PATTERN);
  return(Result);
end FUN_UTC2STRING;



使用PLSQL调用函数,转换时间戳成北京时间。


declare
  v_date    varchar2(19);
  v_utc     number;
  v_pattern varchar2(21);               --这个用于日期格式所以占符大些
begin
  v_utc     := 1504677363;              --日间戳
  v_pattern := 'YYYY-MM-DD HH24:MI:SS'; --日期格式
  v_date    := fun_utc2string(v_utc, v_pattern);
  dbms_output.put_line('UTC时间戳: '|| v_utc || ' 转换成北京时间是:' || v_date);
end;

UTC时间戳: 1504677363 转换成北京时间是:2017-09-06 13:56:03


当然也可以直接使用select 查询:


SQL> select e.bill_num,fun_utc2string(e.starttime,'yyyy-mm-dd hh24:mi:ss') as bjDATE from te_equip e where rownum<10;

BILL_NUM                         BJDATE
-------------------------------- --------------------------------------------------------------------------------
9000776870                       2012-03-20 15:15:21
9000776870                       2012-03-20 13:11:31
9000776870                       2012-03-20 13:13:39
9000776870                       2012-03-20 13:15:00
9000776870                       2012-03-20 13:31:40
9000776870                       2012-03-20 18:16:39
9000776870                       2012-03-20 17:30:07
9000776870                       2012-03-20 17:33:37
9000776870                       2012-03-20 13:48:19
9 rows selected





Viewing all articles
Browse latest Browse all 780

Trending Articles


Vimeo 10.7.1 by Vimeo.com, Inc.


UPDATE SC IDOL: TWO BECOME ONE


KASAMBAHAY BILL IN THE HOUSE


Girasoles para colorear


Presence Quotes – Positive Quotes


EASY COME, EASY GO


Love with Heart Breaking Quotes


Re:Mutton Pies (lleechef)


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


Vimeo 10.7.0 by Vimeo.com, Inc.


FORECLOSURE OF REAL ESTATE MORTGAGE


FORTUITOUS EVENT


Pokemon para colorear


Sapos para colorear


Smile Quotes


Letting Go Quotes


Love Song lyrics that marks your Heart


RE: Mutton Pies (frankie241)


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...


Long Distance Relationship Tagalog Love Quotes