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, ... ) { ... } |