あなたは常に ブラウザクライアントでdbの元の値と同じデータを取得
。同じ時点を(異なるタイムゾーンで)表示するには、さまざまな方法があります。 2つの例( timestamptz
のテキスト表現 値):
'2012-03-05 20:00:00+03'
'2012-03-05 18:00:00+01'
同じ値 。
Postgresに関する限り、サーバーのタイムゾーン設定はこれにはまったく関係ありません。関連するのはセッションの設定だけです。そして、変更されるのはディスプレイだけです。 値の。それは常に同じ時点です。
したがって、セッションでタイムゾーンを設定するだけで、適切なテキスト表現を取得できます。
別のオプションは、<です。 code> AT TIME ZONE
構築します。 タイムスタンプ
を取得するには ローカルとして タイムゾーンのないタイムスタンプ
:
SELECT my_timestamptz_column AT TIME ZONE '-8';
タイムゾーンタイプの列を含むテーブル
を処理する場合 、タイムゾーンは行ごとに変わる可能性があるため、これはより良いアプローチかもしれません。
繰り返しますが、これはすべて参照回答にあります: