sql - 如何将 Unix 纪元转换为时间戳

标签 sql postgresql timestamp

我是 postgresql bot 的新手,一般不熟悉 sql。我有一个表,我需要从中读取值,其中一列是一个 unix 时间戳,我想将其转换为更易于阅读的格式,因此我发现了这一点:

SELECT lt,dw,up,to_char(uxts, 'YYYY-MM-DD HH24:MI:SS') 
from products;

但这会产生一个错误: 错误:多个小数点

我迷路了。我相信有人可以告诉我如何去做。文档对我来说不是那么清楚。 Postgresql 9.5 是数据库。

最佳答案

to_char() 将数字、日期或时间戳转换为字符串,而不是相反。

你想要to_timestamp()

Convert Unix epoch (seconds since 1970-01-01 00:00:00+00) to timestamp


所以只需在您的专栏上应用该功能即可

SELECT lt,dw,up,to_timestamp(uxts) as uxts 
from products;

假设 uxts 是某种数字数据类型(integerbigintdouble precision)

关于sql - 如何将 Unix 纪元转换为时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42219890/

相关文章:

mysql - Laravel 5 时间戳不更新正确的时间

sql - 楼层时间戳精确到秒

python - Python 日期的时间戳

sql - 在 SQL Server 2008 中只存储月份和年份?

MySQL 函数占用太多 CPU

sql - 在 PSQL 脚本中使用环境变量

java - Hibernate-search 5.0 空间 - 不确定它是否在哈希中存储纬度/经度

timestamp - 在 NTFS 上的驱动器之间 move 文件夹并保留时间戳

sql - 枢轴以避免 SQL 中的大量连接?

mysql - 删除 SQL 中自特定日期以来未订购的客户数据