![](/img/trans.png)
[英]Datatype to store date of format yyyy-mm-dd hh:mm:ss in postgresql
[英]How to store a mix of partial dates in PostgreSQL, which format can be yyyy-mm-dd, yyyy-mm or yyyy?
當我混合使用yyyy-mm-dd
格式(例如,2000-12-31)、 yyyy-mm
和yyyy
時,我應該如何在 PostgreSQL 中存儲日期? 我還能使用DATE
列嗎?
to_date()
function 可以解析不完整的日期。 如果缺少,它將默認日期為01
。 如果兩者都缺失,它將按日和月默認為01
。 如果您傳遞一個空字符串,它將默認整個表達式為0001-01-01 BC
:
=# select to_date('2020', 'yyyy-mm-dd');
to_date
------------
2020-01-01
(1 row)
=# select to_date('2020-06', 'yyyy-mm-dd');
to_date
------------
2020-06-01
(1 row)
=# select to_date('2020-06-28', 'yyyy-mm-dd');
to_date
------------
2020-06-28
(1 row)
=# select to_date('', 'yyyy-mm-dd');
to_date
---------------
0001-01-01 BC
(1 row)
這些替換是否適用於您的用例?
您在評論中表示這是不可接受的。
日期和時間數據類型具有三個主要優點。
如果您可以請提供有關您計划如何使用無效日期值(例如2020-00-00
)的信息,人們可以提供想法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.