在 PostgreSQL 中存储 ISO 8601 持续时间
Storing ISO 8601 duration in PostgreSQL
需要在 PostgreSQL 中以 ISO 8601 格式 P[n]Y[n]M[n]DT[n]H[n]M[n]S
存储持续时间,然后在脚本中以相同的格式检索它。在 PostgreSQL 中以什么数据类型存储 ISO 8601 持续时间?
谷歌搜索显示有些人将 ISO 8601 持续时间存储为 VARCHAR
。 PostgreSQL 以及其他 date/time types has an interval
data type 可以以 iso_8601
格式存储和 return 持续时间。例如,
CREATE TABLE xyz(
id SERIAL PRIMARY KEY,
duration INTERVAL
);
ISO 8601 格式的持续时间
# SELECT duration FROM xyz;
duration
----------
PT0S
PT1M28S
(2 rows)
interval
的输出样式可以通过SET intervalstyle
命令设置
SET intervalstyle = 'iso_8601';
需要在 PostgreSQL 中以 ISO 8601 格式 P[n]Y[n]M[n]DT[n]H[n]M[n]S
存储持续时间,然后在脚本中以相同的格式检索它。在 PostgreSQL 中以什么数据类型存储 ISO 8601 持续时间?
谷歌搜索显示有些人将 ISO 8601 持续时间存储为 VARCHAR
。 PostgreSQL 以及其他 date/time types has an interval
data type 可以以 iso_8601
格式存储和 return 持续时间。例如,
CREATE TABLE xyz(
id SERIAL PRIMARY KEY,
duration INTERVAL
);
ISO 8601 格式的持续时间
# SELECT duration FROM xyz;
duration
----------
PT0S
PT1M28S
(2 rows)
interval
的输出样式可以通过SET intervalstyle
命令设置
SET intervalstyle = 'iso_8601';