17.00 - 17.05 - TIME - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Published
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1147-170K-JPN
Language
日本語 (日本)

Cデータ型定義

typedef struct ANSI_Time
{
    DECIMAL4 seconds;
    BYTEINT  hour;
    BYTEINT  minute;
} ANSI_Time;

使用方法

secondsメンバーはDECIMAL(8,6)型の数値フィールドであり、それにより秒の整数部2桁と小数点以下6桁までを表記できます。

SQL TIME型に定義されている値の範囲は、関数の入力引数と戻り引数に適用されます。値の有効範囲外の値はエラーを生成します。

UDFに渡すTIME値のすべては、協定世界時(UTC)になります。また、UDFから返すTIME値は、UTCにする必要があります。

TIME型の詳細については、<Teradata Vantage™ - データ タイプおよびリテラル、B035-1143>を参照してください。

UDF定義とC関数宣言の中でTIMEを使用する例を以下に示します。

SQL関数定義 対応するC関数宣言
CREATE FUNCTION F1 (
  A TIME )
RETURNS TIME
 ...;
void f1( ANSI_Time *a,
         ANSI_Time *result,
   ... )
{  ... }