Cambio del valor de zona horaria de los datos.

Tengo que importardatos sin información de zona horaria en ella (sin embargo, sé la zona horaria específica de los datos que quiero importar), pero necesito latimestamp with time zone Formato en la base de datos. Una vez que lo importe y establezco el tipo de datos de marca de tiempotimestamp with time zone, Postgres asumirá automáticamente que los datos en la tabla son de mi zona horaria y le asignarán mi zona horaria. Desafortunadamente, los datos que quiero importar no pertenecen a mi período de tiempo, por lo que esto no funciona.

La base de datos también contiene datos con diferentes zonas horarias. Sin embargo, la zona horaria dentro de una tabla es siempre la misma.

Ahora, podría establecer la zona horaria de la base de datos en la zona horaria de los datos que quiero importar antes de importar los datos (utilizandoSET time zone comando) y cambiarlo de nuevo a mi zona horaria una vez que se haya realizado la importación, y estoy bastante seguro de que los datos almacenados no se verán afectados por el cambio de zona horaria de la base de datos. Pero esto parece ser un enfoque bastante sucio y puede causar problemas más adelante.

Me pregunto si hay una forma más elegante de especificar la zona horaria para la importación sin tener los datos de zona horaria en los datos en sí.

Además, no he encontrado una manera de editar la información de la zona horaria después de la importación. ¿Hay una manera de no convertir, sino simplemente editar la zona horaria para una tabla completa, suponiendo que toda la tabla tenga la misma desviación de zona horaria (es decir, si se ha asignado una incorrecta en la entrada / importación de datos)?

Editar:
Logré especificar una zona horaria al importar, siendo el comando completo:

set session time zone 'UTC';
COPY tbl FROM 'c:\Users\Public\Downloads\test.csv' DELIMITERS ',' CSV;
set session time zone 'CET';

Los datos luego se importan utilizando la zona horaria de la sesión. ¿Supongo que esto no tiene efecto en otras consultas en la base de datos al mismo tiempo desde otras conexiones?

Edición 2:
Descubrí cómo cambiar la zona horaria de una tabla después:
Desplazamiento de la zona horaria de actualización PostgreSQL

Supongo que es más elegante cambiar la zona horaria de la tabla después de la importación y luego usar la sesión para cambiar la zona horaria local temporalmente. Suponiendo que toda la tabla tiene la misma zona horaria, por supuesto.

Entonces el código sería ahora algo en la línea de:

COPY tbl FROM 'c:\Users\Public\Downloads\test.csv' DELIMITERS ',' CSV;
UPDATE tbl SET <tstz_field> = <tstz_field> AT TIME ZONE '<correct_time_zone>';

Respuestas a la pregunta(1)

Su respuesta a la pregunta