sourcecode

SQL 쿼리의 표준 시간대 변환

codebag 2023. 8. 31. 23:52
반응형

SQL 쿼리의 표준 시간대 변환

쿼리를 사용하여 Oracle DB에서 GMT로 저장된 응용 프로그램 Received Date를 가져오는 중입니다. 이제 검색하는 동안 이를 Eastern 표준/일광 절약 시간으로 변환해야 합니다.이에 대해 아래 쿼리를 사용하고 있습니다.

   select to_char (new_time(application_recv_date,'gmt','est'), 'MON dd, YYYY') from application

표준 시간에 잘 작동합니다.그러나 일광 절약 시간의 경우 시간대 정보를 기반으로 'edt'로 변환해야 합니다.나는 이것을 어떻게 하는지 잘 모르겠습니다.저 좀 도와주세요

표준 시간대 변경에 대해 걱정하지 않고 이 쿼리를 사용할 수 있습니다.

select to_char(cast(application_recv_date as timestamp) at time zone 'US/Eastern',
               'MON dd, YYYY'
              )
from application;

예:

EDT:

select cast(date'2014-04-08' as timestamp) d1,
       cast(date'2014-04-08' as timestamp) at time zone 'US/Eastern' d2
from dual;

D1                                 D2
---------------------------------- -------------------------------------------
08-APR-14 12.00.00.000000 AM       07-APR-14 08.00.00.000000 PM US/EASTERN

EST:

select cast(date'2014-12-08' as timestamp) d1,
       cast(date'2014-12-08' as timestamp) at time zone 'US/Eastern' d2
from dual;

D1                                 D2
---------------------------------- -------------------------------------------
08-DEC-14 12.00.00.000000 AM       07-DEC-14 07.00.00.000000 PM US/EASTERN

업데이트:

시간대가 지정되지 않은 경우 로컬 시간대가 변환에 사용된다는 점을 상기시켜 준 Alex Pool 덕분입니다.

날짜를 GMT로 인식하려면 from_tz를 사용합니다.

from_tz(cast(date'2014-12-08' as timestamp), 'GMT') at time zone 'US/Eastern'

Oracle에서는 다음 쿼리를 사용하여 이를 달성할 수 있습니다.

Select current_timestamp, current_timestamp at time zone 'Australia/Sydney' from dual;

어디에Australia/Sydney시간을 변환할 표준 시간대의 이름입니다.

필요한 열의 시간을 한 시간대에서 다른 시간대로 변환하는 함수가 이미 존재합니다.

 convert_tz("columname or / the time you want to convert", fromTimeZone, ToTimeZone)

예: - 날짜의 시간을 변환합니다.인도 시간(IST)에서 브라질 시간대까지의 시간 열은 기본적으로 인도에서 호스트 데이터베이스 시간으로 인도 시간이 소요됩니다.

  1. 인도 시간은 GMT+5:30입니다.
  2. 브라질 표준시는 GMT-5:30입니다.

convert_tz(dl.modified_datetime, '+5:30', '-3:00') 'modified_time'

그래서 이 과정에서 쉽게 변환할 수 있습니다.

언급URL : https://stackoverflow.com/questions/22933608/time-zone-conversion-in-sql-query

반응형