首页 > 解决方案 > 在 Postgresql 中存储格式化时间戳的最佳方法是什么

问题描述

以特定格式在 Postgresql 中存储时间戳值的最佳方法是什么。例如,我想将一个TIMESTAMP '2020-07-09 17:29:30.873513Z'向下存储到分钟并忽略秒值。

date_trunc('minute', TIMESTAMP '2020-07-09 17:29:30.873513Z')创建表时,我可以通过使用 Is there Anyway for me to 在列本身中指定此格式来减少秒数?

标签: postgresql

解决方案


不要在数据库中存储格式化的时间戳,使用timestamp with time zoneor timestamp without time zone。您将失去强大的日期时间算法、值检查并浪费存储空间。

要将值截断为分钟精度,请BEFORE INSERT使用在该值上使用的触发器date_trunc

如果要确定仅存储此类值,请添加检查约束。


推荐阅读