如何获取我需要的时间格式?

问题描述 投票:2回答:2

目前,我以这种格式获取日期:

2019-10-07

即,看起来像这样

TO_CHAR("DATE_BEGIN", 'YYYY-MM-DD')

如何以这种格式接收日期:

Wed Oct 07 2019 00:00:00 GMT 0500

我尝试这样做:

 TO_CHAR("DATE_BEGIN", 'DY MON DD YYYY HH24:MI:SS') like '%Wed Aug 28 2019 00:00:00 GMT 0500%'

但是缺少某些内容,因为它不起作用。

sql oracle date-format
2个回答
2
投票

我认为这是您想要的格式:

select to_char( systimestamp at time zone 'GMT','Dy Mon dd yyyy hh24:mi:ss TZR') 
  from dual;

或直接使用:

select to_char( systimestamp,'Dy Mon dd yyyy hh24:mi:ss TZR') 
  from dual;

或对于您当前的替换日期,使用强制转换:

select to_char( cast( date'2019-10-07' as timestamp) at time zone 'GMT',
                      'Dy Mon dd yyyy hh24:mi:ss TZR') 
  from dual;

Demo


2
投票

我不确定您是否可以同时返回GMT0500。这应该使您接近:

SELECT TO_CHAR(CURRENT_TIMESTAMP AT TIME ZONE 'GMT', 'Dy Mon DD YYYY HH:MI:SS TZR') 
FROM dual

结果:

Mon Oct 07 2019 08:24:44 +00:00

SQL Fiddle

© www.soinside.com 2019 - 2024. All rights reserved.