将长(数字)文本数据类型(带空白值)转换为日期

时间:2019-02-19 13:28:27

标签: postgresql

我无法将HubSpot UNIX时间戳转换为日期。时间戳记存储为文本值。

enter image description here

值看起来像这样:

1549324800000

我的逻辑是首先将数字转换为 bigint ,然后使用以下方法将其转换为日期:

TO_CHAR(TO_TIMESTAMP(properties__vape_station__value)), 'DD/MM/YYYY')

在PostgreSQL 11中将文本类型的UNIX时间戳转换为日期的最佳方法是什么。

1 个答案:

答案 0 :(得分:0)

您可以将该列中的值转换为bigint,然后使用to_timestamp

但是很明显,如果没有值,该列也存储空字符串而不是NULL值,因此您需要考虑到这一点:

to_timestamp(nullif(trim(properties__vape_station__value),'')::bigint/1000)

但是,如果该列中存储了除数字以外的其他内容,这仍然会失败。