タイムゾーンのソート順序 - Teradata Database - Teradata Vantage NewSQL Engine - ANSI DateTime式、関数、タイムゾーンのソート順序。

Teradata Vantage™ SQL日付と時刻の関数および式

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/pxz1544241488545.ditamap
dita:ditavalPath
ja-JP/pxz1544241488545.ditaval
dita:id
B035-1211
Product Category
Software
Teradata Vantage

タイムゾーンは、同一タイムゾーンを使用して年代順に順序付けされます。

TIMESTAMP(0) WITH TIME ZONE型の列が含まれるテーブルに対して、配列が指定されたSELECT文を使用した次の例を考えてみてください。

これらのORDER BY SELECTで示された同じ順番がすべてのタイムゾーン比較操作に適用されます。

SELECT f1 TIMESTAMPFIELD
FROM timestwz
ORDER BY f1;

この文は、次の結果テーブルを戻します。

TIMESTAMPFIELD
-------------------------
1997-10-07 15:43:00+08:00
1997-10-07 15:43:00-00:00
1997-10-07 15:47:52-08:00

値は、格納されたタイムゾーン情報と共に表示されますが、配列がすぐに明確にならないことに注意する必要があります。

ここで、CAST関数によってタイムゾーンを標準化すると、年代順の配列が明示的に示されます。

SELECT CAST(f1 AS TIMESTAMP(0)) TIMESTAMP_NORMALIZED
FROM timestwz
ORDER BY f1;

この文は、次の結果テーブルを戻します。

TIMESTAMP_NORMALIZED
-------------------
1997-10-06 23:43:00
1997-10-07 07:43:00
1997-10-07 15:45:52

並びは前の問合わせと同じですが、TIMESTAMP値の表示はセッションに有効なタイムゾーン(すなわち‘-08:00’)に標準化されています。

タイムゾーンの処理を変える、すなわち地方時を反映させると、同じ年代順の並びでも表示が異なります。

SELECT f1 AT LOCAL LOCALIZED
FROM timestwz
ORDER BY f1;

この文は、次の結果テーブルを戻します。

LOCALIZED
-------------------------
1997-10-06 23:43:00-08:00
1997-10-07 07:43:00-08:00
1997-10-07 15:45:52-08:00