带有特定格式时区的 db 日期时间
Posted
技术标签:
【中文标题】带有特定格式时区的 db 日期时间【英文标题】:db date time with timezone in a specific format 【发布时间】:2016-02-04 16:49:07 【问题描述】:我正在尝试使用以下格式的 sql 查询来获取数据库日期和时间 “2016-01-26T12:07:41-08:00”
从 dual 中选择 systimestamp 给了我类似的价值 2016-02-03 10:39:29.099545 -8:00
那么正确的查询应该是什么
【问题讨论】:
【参考方案1】:我想这就是你所追求的:
select to_char(systimestamp, 'yyyy-mm-dd"T"hh24:mi:ssTZH:TZM') time_stamp
from dual;
TIME_STAMP
---------------------------------------------------
2016-02-04T12:20:33-05:00
【讨论】:
注意TZR
表示“时区区域名称”。这可以是-08:00
之类的字符串,但也可以是US/Pacific
。使用 TZH:TZM
始终获取 UTC 的小时:分钟偏移量。
@WernfriedDomscheit 啊,谢谢!我会更新我的答案以包括它;测试的时候有点仓促!【参考方案2】:
我不是 100% 了解您想要的格式,因为您似乎两次给出相同的格式。 但是,如果您想更改 systimestamp 输出的格式,您可以执行以下操作: SELECT TO_CHAR(SYSTIMESTAMP, 'dd/mm/yy') FROM DUAL;
结果: 2016 年 4 月 2 日
【讨论】:
抱歉解决了这个问题 格式dd/mm/yy
肯定与要求的不同:2016-01-26T12:07:41-08:00
是的 - 很明显这只是一个例子,回复的重点是说明如何重新格式化日期以上是关于带有特定格式时区的 db 日期时间的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 JavaScript date-fns 库在特定时区格式化日期/时间