Tú siempre obtenga los same data in browser client as the db original value
. Hay muchas formas diferentes de mostrar el mismo punto en el tiempo (en diferentes zonas horarias). Dos ejemplos (representaciones de texto de un timestamptz
valor):
'2012-03-05 20:00:00+03'
'2012-03-05 18:00:00+01'
Mismo valor .
En lo que respecta a Postgres, la configuración de la zona horaria del servidor es completamente irrelevante para esto. Lo único relevante es la ambientación de la sesión. Y lo único que cambia es la pantalla del valor Siempre es el mismo punto en el tiempo.
Así que simplemente configure la zona horaria en su sesión para obtener la representación de texto correspondiente:
- Establecer la zona horaria de la instancia de PostgreSQL
- Volcado y restauración de PostgreSQL en una zona horaria diferente
- Establecer la zona horaria de la columna de marca de tiempo en PostgreSQL
Otra opción sería AT TIME ZONE
construir. Para obtener una timestamp
como local timestamp without time zone
:
SELECT my_timestamptz_column AT TIME ZONE '-8';
Cuando se trata de una tabla table that contains a column of timezone type
, este podría ser el mejor enfoque, ya que la zona horaria puede cambiar para cada fila.
Nuevamente, todo esto está en la respuesta de referencia: