datetime – 如何设置Postgresql默认值的日期戳如“YYYYMM”?

作为标题,如何设置一个表的列,使其认值为当前年份和月份,格式为“YYYYMM”,如今天的200905?
请记住,日期的格式与存储无关。如果您对日期是必需的,则以该格式存储日期,则需要定义自定义数据类型或将其存储为字符串。然后,您可以使用 extract,类型转换和级联的组合来获得该格式。

但是,我怀疑要存储日期并获取输出格式。所以,这样的事情会为你做点窍门:

create table my_table
    (
    id serial primary key not null,my_date date not null default CURRENT_DATE
    );

(CURRENT_DATE is basically a synonym for Now() and a cast to date).

(编辑使用to_char)。

你可以得到你的输出

select id,to_char(my_date,'yyyymm') from my_table;

现在,如果您真的需要将该字段存储为字符串,并确保您可以始终执行的格式:

CREATE TABLE my_other_table
(
id serial primary key not null,my_date varchar(6) default to_char(CURRENT_DATE,'yyyymm')
);

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...