nali Asked: 2019-02-22 02:10:45 +0800 CST2019-02-22 02:10:45 +0800 CST 2019-02-22 02:10:45 +0800 CST 计算闰秒 772 我使用 PostgreSQL 11 并有两列。一个是不知道闰秒的 unix 时间戳和一个知道闰秒的 utc 时间戳。 有没有办法找到 unix 时间戳(没有闰秒)和 utc 时间戳(有闰秒)之间的闰秒数? 或者有没有办法将 utc 时间戳(有闰秒)转换为 unix 时间戳(没有闰秒)? timestamp unix 1 个回答 Voted Best Answer eckes 2019-02-22T03:49:23+08:002019-02-22T03:49:23+08:00 我认为“UTC 时间戳”不是正确的术语,因为 UTC 是根据闰秒定义的。 这里更常用的术语是 TAI 时间或 GPS 时间,两者都不使用闰秒,而 UTC 是根据 TAI 定义的(GPS 基本上是 TAI 从不同的偏移量开始,因此它的闰时少了 19 秒)。 UTC 时间与 TAI 时间的差异是无法计算的(除非你有两个时间戳,那么你只需要减去它们)。相反,要在过去的任何时间和未来的某个时间获得官方偏移量,您需要查找官方表格,这是权威来源:http ://hpiers.obspm.fr/eop-pc/index.php 我认为一些时区信息文件/库也有该信息,但在商业数据库中没有看到任何支持。
我认为“UTC 时间戳”不是正确的术语,因为 UTC 是根据闰秒定义的。
这里更常用的术语是 TAI 时间或 GPS 时间,两者都不使用闰秒,而 UTC 是根据 TAI 定义的(GPS 基本上是 TAI 从不同的偏移量开始,因此它的闰时少了 19 秒)。
UTC 时间与 TAI 时间的差异是无法计算的(除非你有两个时间戳,那么你只需要减去它们)。相反,要在过去的任何时间和未来的某个时间获得官方偏移量,您需要查找官方表格,这是权威来源:http ://hpiers.obspm.fr/eop-pc/index.php
我认为一些时区信息文件/库也有该信息,但在商业数据库中没有看到任何支持。