簡體   English   中英

時區轉換為基於CST的GMT偏移量

[英]Time zone conversion to CST based GMT offset

我現在有日期(2014年10月1日),時間(00:37:31),格林尼治標准時間差(-360),現在我想讓時​​間充斥CST。 解決方案可以在javascript或oracle數據庫中。

我讀過幾篇文章,但是找不到任何地方。.有人可以幫我解決這個問題嗎?

在Oracle中,要將本地時間轉換為另一個時區的時間,您需要CAST TIMESTAMP WITH TIMEZONE進行CAST TIMESTAMP WITH TIMEZONE

例如,我想將“ IST”印度標准時間(即本地時區)轉換為“ CST”(即中部):

SQL> WITH T AS
  2    ( SELECT to_timestamp('10/01/2014 11','mm/dd/yyyy hh24') ist FROM dual
  3    )
  4  SELECT ist,
  5    CAST(CAST(ist AS TIMESTAMP WITH TIME ZONE) at TIME zone 'CST' AS TIMESTAMP) cst
  6  FROM t
  7  /

IST                                 CST
----------------------------------- ------------------------------
01-OCT-14 11.00.00.000000000 AM     01-OCT-14 12.30.00.000000 AM

請注意Daylight saving 您可能需要注意CSTCDT理解。

做這件事有很多種方法:

SELECT 
    (TIMESTAMP '2014-10-01 00:37:31') AT TIME ZONE 'CST',
    FROM_TZ((TIMESTAMP '2014-10-01 00:37:31'), 'CST'),
    CAST((TIMESTAMP '2014-10-01 00:37:31') AT TIME ZONE 'CST' AS TIMESTAMP) 
FROM DUAL;

這取決於結果是否應包括新時區。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM