我在 postgresql 中将我的日期字段设置为数字,日期中的值类似于 1401710352000,当我尝试使用 to_timestamp(date) 转换它时,我得到相应的时间戳为“46388-06-07 10:40: 00+00"
我试着用谷歌搜索它,我发现了关于如何在 postgresql 中进行不同类型转换的非常有用的函数,但我找不到如何将数字日期转换为适当的可读格式。如果有人能告诉我如何将数字日期字段转换为时间戳/日期可读格式,我将不胜感激
沙阿
最佳答案
来自fine manual :
to_timestamp(double precision)
timestamp with time zone
convert Unix epoch to time stamp
Unix 纪元以秒为单位,但看起来您的数值以毫秒为单位。如果我们修复单位,那么我们会得到看起来合理的东西:
=> select to_timestamp(1401710352000::numeric/1000);
to_timestamp
------------------------
2014-06-02 04:59:12-07
因此,您可能只需要在调用 to_timestamp
之前将单位除以 1000 即可。
关于postgresql 将数字转换为日期和格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26198358/