我的表中有带有时区的时间戳(timestamptz)。我可以将它们转换为 unix 时间戳格式的数字或 int 吗?
我发现了这个问题,但它只显示了如何将没有时区的时间戳转换为unix时间戳。
为了解决这个问题,我看了这里。
例如,我所在的时区为 UTC + 1,
所以,
SELECT CURRENT_TIMESTAMP AT TIME ZONE 'UTC';
Run Code Online (Sandbox Code Playgroud)
给出:
2019-06-06 17:41:00.216647
Run Code Online (Sandbox Code Playgroud)
这比时钟时间晚 1 小时,因为我使用的是 UTC + 1。
所以,然后从这里,我得到了SELECT EXTRACT(EPOCH FROM ts) FROM data
结合两者得出:
SELECT EXTRACT(EPOCH FROM (CURRENT_TIMESTAMP AT TIME ZONE 'UTC'));
Run Code Online (Sandbox Code Playgroud)
这对我来说给出:
date_part
1559843103.53928
Run Code Online (Sandbox Code Playgroud)
YMMV - 小提琴可用在这里- 将您的时间戳记放入 current_timestamp 的公式中,您应该是黄金!
有趣的是,您可以在这里检查您的结果。
ps欢迎来到论坛!:-)
| 归档时间: |
|
| 查看次数: |
14565 次 |
| 最近记录: |