単一列のテーブルに、TIMESTAMP(0) WITH TIME ZONEタイプの行が3つあります。
フィールド値を要求し、それらをDATEとしてキャストする問合わせが、その現地のタイムゾーンが-’08:00’に定義されているセッション時に実行されます。
結果として得られるテーブルは、以下のとおりです。
TimeStampWithTimeZone CastAsDate ------------------------------------------------- 1997-10-07 15:43:00+08:00 1997-10-06 1997-10-07 15:47:52-08:00 1997-10-07 1997-10-07 15:43:00-00:00 1997-10-07
格納されたタイムゾーンと現地タイムゾーンの差は最初の行では16時間ですが、同時にTimeStamp値は15:43であり、16時間よりも少ない点に注意する必要があります。
このような結果の不一致は、TIMESTAMP(0)としてTIMESTAMP(0) WITH TIME ZONEをキャストする類似した問合わせを使用してタイムゾーン情報を省略すると、解決することができます。
この問合わせの結果のテーブルは、以下のとおりです。
TimeStampWithTimeZone CastAsTimeStamp ------------------------------------------------- 1997-10-07 15:43:00+08:00 1997-10-06 23:43:00 1997-10-07 15:47:52-08:00 1997-10-07 15:47:52 1997-10-07 15:43:00-00:00 1997-10-07 07:43:00
CASTの後、値はすべて現地タイムゾーンで表示され、最初の行の値は16時間調整されて、日付が1日戻った遅い時間を示します。