DateStyle
是一个 配置参数,用于确定日期和时间值的显示格式。它还确定解释不明确日期输入值的规则。
DateStyle
添加于 PostgreSQL 7.3。
默认值
DateStyle
的默认值为:ISO, MDY
。
但是,initdb
会在生成的 postgresql.conf
文件中创建一个条目,该条目对应于所选 lc_time
区域设置的行为。
用法
出于历史原因,DateStyle
由两个用逗号分隔的元素组成:
- 输出格式规范 (
ISO
,Postgres
,SQL
, 或German
) - 年/月/日顺序的输入/输出规范 (
DMY
,MDY
, 或YMD
)
年/月/日顺序规范存在以下同义词:
DMY
:Euro
,European
MDY
:US
,NonEuro
,NonEuropean
每个元素都可以单独设置,例如 SET DateStyle TO 'SQL'
或 SET DateStyle TO 'YMD'
。
按 PostgreSQL 版本查看详情
DateStyle (PostgreSQL 18)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/18/postgresql.conf |
源代码行 | 736 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 17)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/17/postgresql.conf |
源代码行 | 736 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 16)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/16/postgresql.conf |
源代码行 | 715 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 15)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/15/postgresql.conf |
源代码行 | 711 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 14)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/14/postgresql.conf |
源代码行 | 694 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 13)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/13/postgresql.conf |
源代码行 | 679 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 12)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/12/postgresql.conf |
源代码行 | 650 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 11)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/11/postgresql.conf |
源代码行 | 590 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 10)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/10/postgresql.conf |
源代码行 | 566 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 9.6)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/96/postgresql.conf |
源代码行 | 553 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 9.5)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/95/postgresql.conf |
源代码行 | 535 |
需要重启 | 否 |
文档: DateStyle
DateStyle (PostgreSQL 9.4)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/94/postgresql.conf |
源代码行 | 522 |
文档: DateStyle
DateStyle (PostgreSQL 9.3)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/93/postgresql.conf |
源代码行 | 504 |
文档: DateStyle
DateStyle (PostgreSQL 9.2)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/92/postgresql.conf |
源代码行 | 498 |
文档: DateStyle
DateStyle (PostgreSQL 9.1)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/91/postgresql.conf |
源代码行 | 481 |
文档: DateStyle
DateStyle (PostgreSQL 9.0)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/90/postgresql.conf |
源代码行 | 462 |
文档: DateStyle
DateStyle (PostgreSQL 8.4)
设置 | ISO, MDY |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 | |
枚举值 | |
启动值 | ISO, MDY |
重置值 | ISO, MDY |
源文件 | /home/barwick/devel/postgres/data/84/postgresql.conf |
源代码行 | 433 |
文档: DateStyle
DateStyle (PostgreSQL 8.3)
设置 | |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 |
文档: DateStyle
DateStyle (PostgreSQL 8.2)
设置 | |
单位 | |
类别 | 客户端连接默认值/区域设置和格式 |
简短描述 | 设置日期和时间值的显示格式。 |
额外描述 | 还控制对不明确日期输入的解释。 |
上下文 | 用户 |
变量类型 | 字符串 |
来源 | 配置文件 |
最小值 | |
最大值 |
文档: DateStyle
变更历史
- PostgreSQL 7.3
- 添加 (提交 f0811a74)
示例
DateStyle
是少数几个规范名称采用“驼峰式”格式的 GUC 之一。
postgres=# SHOW datestyle; DateStyle ----------- ISO, YMD (1 row)
控制对可能模棱两可的日期字符串的解释
postgres=# SET datestyle TO 'YMD'; SET postgres=# SELECT '12-11-10'::date; date ------------ 2012-11-10 (1 row) postgres=# SET datestyle TO 'MDY'; SET postgres=# SELECT '12-11-10'::date; date ------------ 2010-12-11 (1 row)
将DateStyle
设置为Postgres
或SQL
之一将生成以美国仍在流行的,反直觉的、模棱两可的格式输出。
postgres=# SET datestyle TO 'Postgres, YMD'; SET postgres=# SELECT '12-11-10'::date; date ------------ 11-10-2012 (1 row) postgres=# SET datestyle TO 'SQL'; SET postgres=# SELECT '12-11-10'::date; date ------------ 11/10/2012 (1 row)
German
输出格式使用句点作为分隔符。
postgres=# SET datestyle TO 'German, DMY'; SET postgres=# SELECT '12-11-10'::date; date ------------ 12.11.2010 (1 row)
参考文献
- PostgreSQL 文档: DateStyle
有用链接
- ISO 8601 - 关于日期格式的经典 XKCD 公益广告