TIME - Advanced SQL Engine - Teradata Database

SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-24
dita:mapPath
qwr1571437338192.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1147
lifecycle
previous
Product Category
Teradata Vantage™

C Data Type Definition

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

Usage

The seconds member is laid out as a DECIMAL(8,6) numeric field, which can represent up to two digits of whole seconds and six digits of fractional seconds.

The range of values defined for the SQL TIME type applies to the input arguments and return argument of a function. A value outside the valid range of values produces an error.

All TIME values passed to a UDF are in Universal Coordinated Time (UTC), and all TIME values that are returned from a UDF must be in UTC.

For details on the TIME type, see Teradata Vantage™ - Data Types and Literals, B035-1143.

Here is an example using TIME in a UDF definition and C function declaration.

SQL Function Definition Equivalent C Function Declaration
CREATE FUNCTION F1 (
  A TIME )
RETURNS TIME
 ...;
void f1( ANSI_Time *a,
         ANSI_Time *result,
   ... )
{  ... }