17.05 - 例: RANGE_N式にCURRENT_DATEを使用した四半期パーティション - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Release Date
2021年1月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-175K-JPN
Language
日本語 (日本)

この例では、RANGE_Nを使用したCURRENT_DATEを持つ個別のパーティションとしてsalesを四半期ごとにパーティション化します。このようなパーティション化では、四半期ごとにCURRENT_DATEを新しい日付に解決できます。

このCREATE TABLEリクエストは、増大するパーティションを終わりに、そして縮小するパーティションを初めに持つPPIテーブルを作成します。この場合、Vantageは、パーティションを調整するときにCURRENT_DATEの値が変更されたために削除されたパーティションからデータを除去します。

     CREATE SET TABLE sales, NO FALLBACK (
       store_ID  INTEGER,
       amount    DECIMAL(10, 2),
       region    CHARACTER(30),
       sale_date DATE FORMAT 'YYYY/MM/DD' NOT NULL)
     PRIMARY INDEX (store_ID) 
     PARTITION BY RANGE_N(sale_date BETWEEN CURRENT_DATE - INTERVAL '9'
                                            MONTH
                                    AND     CURRENT_DATE + INTERVAL '3'
                                            MONTH - INTERVAL '1' DAY
                                    EACH INTERVAL '3' MONTH);