16.20 - テンポラル列 - Teradata Vantage NewSQL Engine

Teradata Vantage™ ANSIテンポラル テーブル サポート

prodname
Teradata Database
Teradata Vantage NewSQL Engine
vrm_release
16.20
category
プログラミング リファレンス
featnum
B035-1186-162K-JPN

Teradataは、派生PERIOD列を使用して、列レベルでテンポラル テーブルをサポートします。PERIODとは固定期間のことであり、期間内で連続する時間単位を表現します。テーブルの2つのDateTime型列で定義される開始および終了境界値があります。

テンポラル テーブルでは、開始および終了境界値の列の値は3番目の派生列に結合されます。この列は、これらの値によって区切られる期間を表わします。

保険会社のアプリケーションは、各保険契約(行)が有効な期間を記録するための派生期間列を持つPolicyテーブルを作成できるようになります。

CREATE TABLE Policy(
 Policy_ID INTEGER,
 Customer_ID INTEGER,
 Policy_Type CHAR(2) NOT NULL,
 Policy_Details CHAR(40),
 Policy_Begin DATE NOT NULL,
 Policy_End DATE NOT NULL,
 PERIOD FOR Policy_Duration(Policy_Begin,Policy_End) AS VALIDTIME
  )
 PRIMARY INDEX(Policy_ID);

派生期間列は内部で使用されます。Teradata Databaseにより、各行の値がテーブルの定義に基づいて、自動的に作成および維持されます。データは、派生期間列に明示的に挿入されず、その列自体が返されたり問い合わされたりすることはありません。

INSERT INTO Policy 
 (Policy_ID,Customer_ID, Policy_Type, Policy_Details, 
  Policy_Begin, Policy_End)
 VALUES (541008,246824626,'AU','STD-CH-345-NXY-00',
         DATE'2009-10-01',DATE'2010-10-01');

SELECT * FROM Policy;

 Policy_ID  Customer_ID  Policy_Type  Policy_Details       Policy_Begin  Policy_End
-----------  -----------  -----------  ------------------- ------------  ----------
     541008    246824626  AU           STD-CH-345-NXY-00     2009/10/01  2010/10/01