例に使用する テーブル定義 - Advanced SQL Engine - Teradata Database

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

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Published
2021年1月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/ncd1596241368722.ditamap
dita:ditavalPath
ja-JP/ncd1596241368722.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

このトピックでは、次の例での テーブル定義について説明します。

例: 無効なMODIFY PRIMARY INDEX文から例: パーティション範囲の削除および追加と、定義範囲外にある行の削除まで、および例: MODIFYを使用したテーブルの再パーティション化と、その結果としての無効行の保存テーブルへの保存から例: テーブルのパーティションの再評価までは、次のテーブルを使用します。

ordersテーブルには、o_orderkeyのプライマリ インデックスと単一レベル パーティションがあります。このテーブルには、o_orderkeyに定義されたUSIもあります。

     CREATE TABLE orders (
       o_orderkey      INTEGER NOT NULL,
       o_custkey       INTEGER,
       o_orderstatus   CHARACTER(1) CASESPECIFIC,
       o_totalprice    DECIMAL(13,2) NOT NULL,
       o_orderdate     DATE FORMAT 'yyyy-mm-dd' NOT NULL,
       o_orderpriority CHARACTER(21),
       o_clerk         CHARACTER(16),
       o_shippriority  INTEGER,
       o_comment       VARCHAR(79))
     PRIMARY INDEX (o_orderkey)
     PARTITION BY RANGE_N(o_orderdate
                          BETWEEN DATE '1992-01-01' 
                          AND     DATE '1998-12-31' 
                          EACH INTERVAL '1' MONTH)
     UNIQUE INDEX (o_orderkey);

orders_cpテーブルはマルチレベルの列パーティションで、2番目のパーティション レベルに行パーティションが定義されています。このパーティション レベルは、ordersの唯一のパーティション レベルと同じパーティション式を使用して定義されます。このテーブルには、o_orderkeyに定義されたUSIもあります。

     CREATE TABLE orders_cp (
       o_orderkey      INTEGER NOT NULL,
       o_custkey       INTEGER,
       o_orderstatus   CHARACTER(1) CASESPECIFIC,
       o_totalprice    DECIMAL(13,2) NOT NULL,
       o_orderdate     DATE FORMAT 'yyyy-mm-dd' NOT NULL,
       o_orderpriority CHARACTER(21),
       o_clerk         CHARACTER(16),
       o_shippriority  INTEGER,
       o_comment       VARCHAR(79))
     NO PRIMARY INDEX 
     PARTITION BY (COLUMN,
                  RANGE_N(o_orderdate BETWEEN DATE '1992-01-01'
                                      AND     DATE '1998-12-31' 
                                      EACH INTERVAL '1' MONTH))
     UNIQUE INDEX (o_orderkey);