在oracle SQL中將歷元日期轉換為時間戳

我在數據庫表中得到一個日期格式的歷元——“19072”

首先,我需要轉換為時間-2022年3月21日,并連接23:59:59日期轉換引用-https://www.timeanddate.com/date/dateadded.html?d1=1&m1=1&y1=1970&type=add&ay=&am=&aw=&ad=19072&rec=

現在我需要將“21/03/2022 23:59:59”轉換為UTC+7:00(印度尼西亞雅加達)。最終的預期輸出是——“22/03/2022 06:59:59”

? 最佳回答:

您可以直接向日期添加天數:

select date '1970-01-01' + 19072 from dual;
21-MAR-22

或者在時間戳上添加一個間隔;這可能更合適,因為無論如何,你都需要一個帶有時區的時間戳,所以這從UTC值開始:

select timestamp '1970-01-01 00:00:00 UTC' + (19072 * interval '1' day) from dual;
21-MAR-22 00.00.00.000000000 PM UTC

然后你可以加上小時、分鐘和秒(或者換一天再減去一秒):

select 
  timestamp '1970-01-01 00:00:00 UTC'
    + (19072 * interval '1' day)
    + (23 * interval '1' hour)
    + (59 * interval '1' minute)
    + (59 * interval '1' second)
from dual;
21-MAR-22 11.59.59.000000000 PM UTC

并用at time zone轉換到你的目標時區:

select
  (
    timestamp '1970-01-01 00:00:00 UTC'
      + (19072 * interval '1' day)
      + (23 * interval '1' hour)
      + (59 * interval '1' minute)
      + (59 * interval '1' second)
  )
  at time zone 'Asia/Jakarta'
from dual;
22-MAR-22 06.59.59.000000000 AM ASIA/JAKARTA

然后出于顯示目的,將其轉換為所需格式的字符串:

select
  to_char(
    (
      timestamp '1970-01-01 00:00:00 UTC'
        + (19072 * interval '1' day)
        + (23 * interval '1' hour)
        + (59 * interval '1' minute)
        + (59 * interval '1' second)
    )
    at time zone 'Asia/Jakarta',
    'DD/MM/YYYY HH24:MI:SS'
  ) as result
from dual;
22/03/2022 06:59:59

你可以通過修改你的歷元來簡化一點,盡管它看起來有點奇怪:

select
  to_char(
    (
      timestamp '1970-01-01 23:59:59 UTC'
        + (19072 * interval '1' day)
    )
    at time zone 'Asia/Jakarta',
    'DD/MM/YYYY HH24:MI:SS'
  ) as result
from dual;
22/03/2022 06:59:59

(我可能更喜歡保持通常的歷元,并執行額外的顯式間隔additions...)

db<>fiddle

僅將其格式化為字符串以顯示它。如果需要將值傳遞到其他地方,則將其保留為帶有時區的時間戳,或者如果需要,將其轉換為普通時間戳,甚至日期。

主站蜘蛛池模板: 中文字幕一区二区免费| 午夜福利无码一区二区| 中文字幕一区二区三区精彩视频 | 亚洲制服丝袜一区二区三区| 久久中文字幕无码一区二区 | 久久久精品日本一区二区三区| 久久久久人妻一区二区三区| 精品乱子伦一区二区三区| 国产精品无码一区二区在线| 亚洲欧洲精品一区二区三区| 久久久久国产一区二区三区| 鲁大师成人一区二区三区| 久久久国产精品无码一区二区三区| 色偷偷av一区二区三区| 国产亚洲日韩一区二区三区| 国产成人片视频一区二区| 日本在线观看一区二区三区| 国产一区在线播放| 日本精品视频一区二区| 日韩一区二区视频| 中文激情在线一区二区| 中文字幕av一区| 国产一区二区三区播放心情潘金莲| 中文字幕一区二区三区精彩视频 | 后入内射国产一区二区| 日韩一区二区a片免费观看| 精品国产乱子伦一区二区三区| 亚洲国产日韩在线一区| 日韩内射美女人妻一区二区三区| 久久精品动漫一区二区三区| 亚洲AV无码一区东京热| 亚洲国产成人久久综合一区| 色噜噜狠狠一区二区三区果冻| 人妻AV中文字幕一区二区三区| 色婷婷一区二区三区四区成人网| 99无码人妻一区二区三区免费| 在线欧美精品一区二区三区 | 中文字幕日韩欧美一区二区三区| 亚洲熟妇无码一区二区三区导航| 精品国产一区二区三区| 日韩美一区二区三区|