テーブルのパーティション レベルが基づくRANGE_N関数に範囲セットを追加します。追加する範囲は昇順で指定する必要があります。RANGE_N関数については、<Teradata Vantage™ - SQL関数、式、および述部、B035-1145>を参照してください。
範囲セットは、パーティション レベルでCASE_N関数に追加(ADD)することはできませんが、MODIFYオプションまたはMODIFY PRIMARY INDEXオプションを使用して、テーブルのパーティション全体を再定義する必要があります。
ADD RANGEを使用して、2バイトのパーティション化から8バイトのパーティション化に変更することはできません。テーブルのパーティション全体を再定義するには、MODIFY PARTITION BYオプションまたはMODIFY PRIMARY INDEXオプションを使用する必要があります。
- ADD RANGE#L n
- パーティション レベル番号で、nは、2バイトのパーティション化に対しては1から15までの整数値、8バイトのパーティション化に対しては1から62までの整数値です。RANGE#Lnの指定のRANGEと#Lnの間にスペースがないことに注意してください。範囲を追加できるのは、テーブルのパーティション レベルがRANGE_N関数からのみ取得されている場合だけです。INTEGER数またはBIGINT数への次の型の範囲のマッピングを定義するには、RANGE_N関数を使用します。
- BIGINT
- BYTEINT
- CHARACTER
- DATE
- GRAPHIC
- INTEGER
- SMALLINT
- VARCHAR
- VARGRAPHIC
- BETWEEN start_expression
- start_expressionは、RANGE_N関数のルールに従って定義されます。
- AND end_expression
- 最後の範囲にのみ必要です。
end_expressionは、RANGE_N関数のルールに従って定義されます。
- EACH range_size
- 指定されたstart_expressionに、0から1つずつ増加するrange_sizeの倍数を追加した一連のstart_expressionと同等になります。range_sizeは、end_expression以下、または次のstart_expression未満にする必要があります。range_size変数は、定数式にする必要があります。
RANGE_N関数が文字またはグラフィックのテスト値を指定する場合、EACH句を指定することはできません。
- NO RANGE
- UNKNOWN
- RANGE_N関数の定義には、NO RANGEまたはUNKNOWNを追加することができます。
- WHERE conditional_expression
- 範囲式または条件パーティション式を指定できます。範囲式または条件パーティション式に基づいて範囲を追加する例については、例: パーティション範囲の削除と追加を参照してください。conditional_expressionはシステムから派生したPARTITION列またはPARTITION#Ln列に基づく必要があります。ここで、nは1から62までの範囲であり、変更するレベル、および変更するのが1つのレベルか複数のレベルかによって異なります。