更新可能日付および更新可能タイムスタンプに基づくパーティション式の最適な調整 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
ft:locale
ja-JP
ft:lastEdition
2021-03-30
dita:mapPath
ja-JP/jpx1556733107962.ditamap
dita:ditavalPath
ja-JP/jpx1556733107962.ditaval
dita:id
B035-1184
Product Category
Software
Teradata Vantage

次のケースが、ALTER TABLE TO CURRENT文を使用してデータが挿入されたテーブルのパーティション式の変更に当てはまります。

次のパーティション定義を考えます。

     CREATE TABLE ppi_1 (
       i INTEGER,
       j DATE)
     PRIMARY INDEX(i)
     PARTITION BY CASE_N(j <  DATE '2011-01-01',
                         j >= DATE '2011-01-01')

現在の日付がDATE '2011-01-01'であると想定します。ppi_1にデータが読み込まれた後で、通常のALTER TABLE文を使用してテーブルppi_1のパーティション定義を変更することはできません。しかし、例えばppi_2のように定義を変更して、単純な日付ではなくCURRENT_DATE関数を使用してテーブルを定義すれば、ALTER TABLE TO CURRENT文を使用して定義を変更できます。

ppi_1のパーティション式の定義をこのように変更する場合、パーティション式のDATEの指定をCURRENT_DATEの指定で置き換えます。これにより、ALTER TABLE TO CURRENT文を使用して日付を変更できます

     CREATE TABLE ppi_2 (
       i INTEGER,
       j DATE)
     PRIMARY INDEX(i)
     PARTITION BY CASE_N(j <  CURRENT_DATE,
                         j >= CURRENT_DATE)

この例では、CURRENT_DATEの解決後の値は、DATE '2011-01-01'になります。