PostgreSQL - 时间戳以12小时格式生成,但需要24小时

时间:2018-06-13 13:42:52

标签: postgresql

我正在研究数据库和CRM之间的同步,而CRM需要数据类型为TIMESTAMP,但当我执行这个简单的查询时

SELECT
    CURRENT_TIMESTAMP,
    CURRENT_TIMESTAMP::TIMESTAMP

我得到了:

2018-06-13 08:37:05.944909
2018-06-13 01:37:05.944909

我比UTC落后5小时,但我希望时间戳返回2018-06-13 13:37:05.944909

2018-06-13 01:37:05.944909被插入CRM时,它认为它是1:37 AM,当然这会弄乱很多其他东西。

我知道我可以使用TO_CHAR(ts, 'YYYY-MM-DD HH24:MI:SS')进行转换,但这会将数据类型更改为TEXT,而我无法将其转换为此类数据。

有没有办法强制PostgreSQL以24小时格式显示时间戳而不会丢失数据类型?

1 个答案:

答案 0 :(得分:1)

使用the_char()函数通过PSQL格式化时间戳值

select to_char(the_column, 'yyyy-mm-dd hh24:mi:ss') from the_table