17.10 - USING句内のANSIのDateTimeとIntervalの比較 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL関数、式、および述部

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1145-171K-JPN
Language
日本語 (日本)

ANSIの日時および間隔データの外部値は、セッション用に指定されているクライアント文字セットの固定長の文字列で表わされます。

USING句を使ってANSIの日時および間隔の値をインポートする場合、外部文字書式から、比較に適したANSI日時および間隔タイプに明示的にCASTする必要があります。

例えば、次のような文を考慮してみます。TimeField列のデータ型はTIME(2)です。

   USING (TimeVal CHARACTER(11), NumVal INTEGER)
   UPDATE TABLE_1
   SET TimeField=:TimeVal, NumField=:NumVal
   WHERE CAST(:TimeVal AS TIME(2)) > TimeField;

割り当てのためにこのUSING句でTimeVal CHAR(11)を直接使用してもかまいませんが、TimeFieldはTIME(2)と定義されているANSI TIMEであるために、テーブル内のフィールド値TimeFieldを比較するには、列データ定義を明示的にTIME(2)にCASTする必要があります。