我们如何在 PostgreSQL 中转换给定的日期时间格式?
How can we convert a given datetime format in PostgreSQL?
我有一个日期时间列,格式如下:
2019-11-10-07.10.55.865000
我希望我的格式如下:
2019-11-10 07:10:55.865000
如何在 PostgreSQL 9.6.11 中执行此操作?
有to_char(timestamp, text)
功能,例如to_char(current_timestamp, 'HH12:MI:SS')
https://www.postgresql.org/docs/current/functions-formatting.html
我们可以尝试从文本到时间戳的完整往返,然后再次返回文本:
SELECT
TO_CHAR(TO_TIMESTAMP('2019-11-10-07.10.55.865000', 'YYYY-MM-DD-HH.MI.SS.US'),
'YYYY-MM-DD HH:MI:SS.US') AS ts_out;
这输出:
2019-11-10 07:10:00.865000
作为旁注,您首先应该认真考虑 而不是 将时间戳存储为文本。理想情况下,如果您想以某种方式查看时间戳列,例如出于报告目的,您只需要使用您要使用的格式掩码对 TO_CHAR
进行一次调用。
我有一个日期时间列,格式如下:
2019-11-10-07.10.55.865000
我希望我的格式如下:
2019-11-10 07:10:55.865000
如何在 PostgreSQL 9.6.11 中执行此操作?
有to_char(timestamp, text)
功能,例如to_char(current_timestamp, 'HH12:MI:SS')
https://www.postgresql.org/docs/current/functions-formatting.html
我们可以尝试从文本到时间戳的完整往返,然后再次返回文本:
SELECT
TO_CHAR(TO_TIMESTAMP('2019-11-10-07.10.55.865000', 'YYYY-MM-DD-HH.MI.SS.US'),
'YYYY-MM-DD HH:MI:SS.US') AS ts_out;
这输出:
2019-11-10 07:10:00.865000
作为旁注,您首先应该认真考虑 而不是 将时间戳存储为文本。理想情况下,如果您想以某种方式查看时间戳列,例如出于报告目的,您只需要使用您要使用的格式掩码对 TO_CHAR
进行一次调用。