我收到的数据具有精确到纳秒的时间戳(我们实际上关心的是纳秒)。Postgres时间戳有没有办法精确到纳秒?
发布于 2019-09-20 17:31:39
正如其他人指出的那样,Postgres没有提供这种开箱即用的类型。然而,由于Postgres的开源特性,创建支持纳秒分辨率的扩展相对简单。我不久前遇到过类似的问题,并为Postgres创建了this timestamp9 extension。
它在内部将时间戳存储为bigint,并将其定义为自UNIX时代以来的纳秒数。它围绕它提供了一些方便的函数,使得查看和操作时间戳变得很容易。如果您可以接受这些时间戳在1970年到2262年之间的有限时间范围,那么这是一个很好的解决方案。
免责声明:我是这个扩展的作者
发布于 2017-07-31 22:30:49
不能,但是你可以将时间戳裁剪为毫秒,并将纳秒部分存储到单独的列中。您可以在这两者上创建索引,也可以在视图或函数上创建索引,以返回所需的纳秒时间戳,甚至还可以在函数上创建索引。
发布于 2017-01-07 05:57:02
一方面,documented resolution是1微秒。
另一方面,PostgreSQL是开源的。也许你可以拼凑出一些支持纳秒的东西。
https://stackoverflow.com/questions/41514225
复制相似问题