例: 期間境界関数を使用したUpsert Update - Teradata Database - Teradata Vantage NewSQL Engine - 例: 期間範囲関数を使用したUPDATEアップサート リクエスト

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/fbo1512081269404.ditamap
dita:ditavalPath
ja-JP/fbo1512081269404.ditaval
dita:id
B035-1146
Product Category
Software
Teradata Vantage

以下の行パーティション テーブルを、期間境界関数のENDを使用して定義するものと仮定します。

     CREATE SET TABLE testing.t33 (
       a INTEGER,
       b PERIOD(DATE),
       c INTEGER)
     PRIMARY INDEX (a)
     PARTITION BY CAST((END(b)) AS INTEGER);

以下のUPDATEアップサート リクエストは、t33に新しい行を挿入します。

     UPDATE t33
      SET c = 1
         WHERE a = 20
         AND   END(b) = DATE '1901-02-25'
       ELSE INSERT INTO t33 (20, PERIOD(DATE '1901-02-24',
                             DATE '1901-02-25'), 1);