In PostgreSQL 2 temporal data types namely timestamp
and timestamptz
where one is without timezone and the later is with timezone respectively, are supported to store Time and Date to a column. Ambos timestamp
etimestamptz
utiliza 8 ytes para armazenar os valores de timestamp.
Syntax: TIMESTAMP; or TIMESTAMPTZ;
now let’s look into some example for better understanding.,ase servidor para a Ásia/Calcutta, como abaixo:
SET timezone = 'Asia/Calcutta';
Agora que o nosso fuso horário é definido, vamos inserir uma nova linha na timestamp_demo tabela usando o comando abaixo:
INSERT INTO timestamp_demo (ts, tstz)VALUES ( '2020-06-22 19:10:25-07', '2020-06-22 19:10:25-07' );
Agora, vamos consultar dados a partir de timestamp
e timestamptz
colunas usando o comando abaixo:
SELECT ts, tstzFROM timestamp_demo;
Resultado:
Exemplo 2:
neste exemplo, vamos converter Ásia/Calcutta fuso horário na America/New_York de fuso horário usando o timezone(zone, timestamp)
função.,>
colunas usando o comando abaixo:
CREATE TABLE timezone_conversion_demo ( tstz TIMESTAMPTZ);
em Seguida, vamos definir o fuso horário do servidor de banco de dados para a Ásia/Calcutta, como abaixo:
SET timezone = 'Asia/Calcutta';
Agora que o nosso fuso horário é definido, vamos inserir uma nova linha na timezone_conversion_demo tabela usando o comando abaixo:
INSERT INTO timezone_conversion_demo ( tstz)VALUES ( '2020-06-22 19:10:25-07' );
Agora, vamos consultar dados a partir de timestamp
e timestamptz
colunas usando o comando abaixo:
SELECT timezone('America/New_York', '2020-06-22 19:10:25');
Resultado: