postgres - 强制转换时间戳格式列表

postgres - cast timestamp format list

提问人:tooptoop4 提问时间:1/31/2023 更新时间:1/31/2023 访问量:69

问:

在postgres中,当我进行cast(varchar_col作为时间戳)时,我如何知道哪些格式(即yyyymmdd,yyyy-mm-dd...等)是否支持?

SQL PostgreSQL 转换 时间戳 postgresql-8.4

评论

1赞 Marcus Müller 1/31/2023
你标记了这个 postgresql-8.4 ;这是您正在使用的版本吗?自 2014 年以来,这实际上一直没有得到支持。
1赞 Adrian Klaver 1/31/2023
这是由数据库的 DateStyle 设置确定的。您可以即时更改它。虽然将时间戳存储为 不是一个好主意,但您应该更好地使用 。varchartimestamptimestamptz

答:

0赞 Marcus Müller 1/31/2023 #1

对你来说不是很好的研究,因为它就在 Postgres 8.4 文档的同名部分:

https://www.postgresql.org/docs/8.4/datatype-datetime.html

时间戳类型的有效输入包括日期和时间的串联,后跟可选时区,后跟可选的 AD 或 BC。(或者,AD/BC 可以出现在时区之前,但这不是首选顺序。

因此,您需要合并“日期输入”表和“时间输入”表中的所有输入格式条目,这些条目太多,无法在答案中合理列出。也没有意义——这就是官方文档的用途。

有关如何从字符串中解析日期和时间的更全面的文档,也正式记录了以下内容:

https://www.postgresql.org/docs/8.4/datetime-input-rules.html