私は、年に 2 回時刻が変わる国に住んでいます。つまり、UTC からのオフセットが -3 時間 (-180 分) の期間と、オフセットが -4 時間 (-240 分) の期間があります。
グラフィカルに:
|------- (offset = -3) -------|------- (offset is -4) -------|
start of year mid end of year
私の質問は次
のとおりです。「タイムゾーン」はオフセットを表す単なる数値ですか? つまり、私の国には 2 つのタイムゾーンがありますか? またはタイムゾーンにこの情報が含まれていますか?
データベースにすべての日付を UTC タイムゾーン (オフセット = 0) で保存しているため、これは重要です。
代わりに、日付をローカルタイムゾーンで保存し、オフセットも保存する必要がありますか?
以下は、日付をタイムゾーン UTC で保存することによって発生する問題の例です
。人々がメッセージを送信するシステムがあるとします。
「1時間ごとに送信されたメッセージ」をプロットする統計セクションが必要です(つまり、「通常の1日の時間ごとに送信されたメッセージ」)
データベース全体に 2 つのメッセージしかないとします。
- メッセージ 1、3 月 1 日、UTC 時間午後 5 時 (現地時間午後 2 時) に送信
- メッセージ 2、8 月 1 日、UTC 時間午後 5 時 (現地時間午後 1 時) に送信
次に、8 月 2 日にプロットを作成した場合、これらの UTC 日付をローカルに変換すると、「午後 1 時に送信されたメッセージが 2 件」という不規則な情報が得られます。