• 技术文章 >数据库 >PostgreSQL

    postgresql时间类型有哪些

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2019-12-18 10:29:41原创5200

    日期/时间类型

    152228f7473d0c7161ce0d9848da516.png

    【注意】在 PostgreSQL 7.3 以前,只写 timestamp 等效于 timestamp with time zone 。这是和 SQL 不兼容的。

    time, timestamp, interval 接受一个可选的精度值 p 以指明秒域中小数部分的位数。没有明确的缺省精度,p 的范围对 timestamp 和 interval 类型是从 0 到大约 6 。

    【注意】如果 timestamp 数值是以双精度浮点数(目前的缺省)的方式存储的,那么有效精度会小于 6 。timestamp 值是以 2000-01-01 午夜之前或之后的秒数存储的,而微秒的精度是为那些在 2000-01-01 前后几年的日期实现的,对于那些远一些的日子,精度会下降。如果timestamp 以八字节整数存储(一个编译时的选项),那么微秒的精度就可以在数值的全部范围内都可以获得。不过,八位整数的时间戳范围缩小到 4713 BC 到 294276 AD 之间。同一个编译时选项也决定 time 和 interval 值是保存成浮点数还是八字节整数。在以浮点数存储的时候,随着时间间隔的增加,大的 interval 数值的精度会降低。

    对于 time 类型,如果使用了八字节的整数存储,那么 p 允许的范围是从 0 到 6 ,如果使用的是浮点数存储,那么这个范围是 0 到 10 。

    time with time zone 类型是 SQL 标准定义的,但是完整定义的有些方面会导致有问题的用法。在大多数情况下,date, time, timestamp without time zone, timestamp with time zone 的组合就应该能提供一切应用需要的日期/时间的完整功能。

    abstime 和 reltime 类型是低分辨率类型,它们被用于系统内部。我们反对你使用这些类型,因为这些旧类型的部分或全部可能会在未来的版本里消失。

    Python学习网,大量的免费PostgreSQL入门教程,欢迎在线学习!

    专题推荐:postgresql 时间类型
    上一篇:postgresql查询一个库有多少表 下一篇:postgresql如何创建数据库

    相关文章推荐

    • 一文了解什么是PostgreSQL• postgresql查询一个库有多少表

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网