Tänk på att formateringen av datumet är oberoende av lagringen. Om det är viktigt för dig att datumet lagras i det formatet måste du antingen definiera en anpassad datatyp eller lagra den som en sträng. Sedan kan du använda en kombination av extrakt , typcasting och sammanlänkning för att få det formatet.
Jag misstänker dock att du vill lagra ett datum och få formatet på utdata. Så något sådant här kommer att göra susen för dig:
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).
(Redigerad för att använda to_char).
Då kan du få din utdata som:
SELECT id, to_char(my_date, 'yyyymm') FROM my_table;
Nu, om du gjorde det måste verkligen lagra det fältet som en sträng och säkerställa formatet du alltid kan göra:
CREATE TABLE my_other_table
(
id serial PRIMARY KEY not null,
my_date varchar(6) default to_char(CURRENT_DATE, 'yyyymm')
);