Oracle
 sql >> база данни >  >> RDS >> Oracle

Преобразуване на часовата зона в SQL заявка

Можете да използвате тази заявка, без да се притеснявате за промени в часовата зона.

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 Poole, че напомни, че когато часова зона не е посочена, за преобразуване се използва местната часова зона.

За да принудите датата да бъде разпозната като GMT, използвайте from_tz.

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Проверете ограничение, извикване на функция Oracle SQL разработчик

  2. Проверка на sid на oracle и име на база данни

  3. Разбивка на Oracle Cloud – Разходи за хостинг на база данни на OCI

  4. Вземете тип данни на полето в оператор select в ORACLE

  5. Промяна на паролата с Oracle SQL Developer