我在Postgres的PubMed上存儲期刊論文的數據,我想存儲論文的發表日期。但是,有時日期爲just a year(請參閱PubDate
字段),有時候是一個月和一年,有時候是日,月和年。如何在postgres中以不同級別的精度存儲日期?
在我的數據庫中存儲這些數據的明智方式是什麼?
如果我使用Postgres日期字段,我顯然需要指定日期和月份,但在某些情況下我需要發明它們,並且我不喜歡丟失有關日期的信息的想法精確。
對於我的目的我認爲我只需要一年,但我不知道這是真實的所有可能的未來目的。
也許我應該有day
,month
和year
文本字段,然後我可以隨時將其轉換爲日期字段,將來如果我需要他們?
是的,你最後的建議對我來說似乎很合理。你也可以添加一個'CHECK'約束來檢查如果'day'不是null,那麼'month'也不是null。另一種方法是創建日期列和第二列以指示日期列的準確性。 – redneb
Postgres中的[ISO-8601可能的重複:如何在類型日期只插入年份? (不完整的日期時間值)](http://stackoverflow.com/questions/21599997/iso-8601-in-postgres-how-to-insert-only-year-in-type-date-incomplete-date-tim ) – moooeeeep