psycopg2:用于存储周的间隔类型

0 投票
1 回答
858 浏览
提问于 2025-04-17 03:45

我正在使用PostgreSQL和Python,需要按年份的周来存储数据。有很多选择:

  • 将周和年分成两个单独的字段
  • 一个指向周开始的日期(或者一周中的任意一天)
  • 还有我喜欢的:使用间隔类型。

我以前没用过这个,但看了文档后,感觉挺合适的。不过,后来在看psycopg的文档时发现,间隔类型在Python中对应的是timedelta对象……这让我觉得有点奇怪,因为timedelta只是表示时间的差值。

所以,这里其实有两个问题:

  1. 我可以用psycopg2处理这个选择吗?
  2. 有没有更好的选择?

谢谢

1 个回答

4

PostgreSQL中的时间间隔类型其实不是你想要的东西——它主要是用来存储任意长度的时间,从微秒到几百万年都有。这个时间间隔没有开始和结束的具体时间,它只是用来表示“多长时间”。

如果你是想存储某个事件属于哪一周,可能你前面提到的前两个选项会更合适。

撰写回答