PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Часова зона на заявката - db сървърът и клиентската машина имат различни часови зони

Виевинаги вземете same data in browser client as the db original value . Има просто много различни начини за показване на една и съща точка във времето (в различни часови зони). Два примера (текстови представяния на timestamptz стойност):

'2012-03-05 20:00:00+03'
'2012-03-05 18:00:00+01'

Същата стойност .

Що се отнася до Postgres, настройката на часовата зона на сървъра е напълно без значение за това. Единственото важно нещо е настройката на сесията. И единственото нещо, което се променя, е дисплеят от стойността. Винаги е една и съща точка във времето.

Така че просто задайте часовата зона във вашата сесия, за да получите съответното текстово представяне:

Друг вариант би бил AT TIME ZONE конструирам. За да получите timestamp като локален timestamp without time zone :

SELECT my_timestamptz_column AT TIME ZONE '-8';

Когато работите с table that contains a column of timezone type , това може да е по-добрият подход, тъй като часовата зона може да се променя за всеки ред.

Отново, всичко това е в референтния отговор:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Пълнотекстово търсене на подниз в PostgreSQL

  2. Експортирайте конкретни редове от PostgreSQL таблица като INSERT SQL скрипт

  3. Време между две събития

  4. PostgreSQL:Кой тип данни трябва да се използва за валута?

  5. Настройка на производителността:Създайте индекс за булева колона