16.20 - TIMESTAMP - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
16.20
Release Date
April 2020
Content Type
Programming Reference
Publication ID
B035-1147-162K
Language
English (United States)

C Data Type Definition

typedef struct TimeStamp
{
    DECIMAL4 seconds;
    SMALLINT year;
    BYTEINT  month;
    BYTEINT  day;
    BYTEINT  hour;
    BYTEINT  minute;
} TimeStamp;

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 TIMESTAMP type applies to the input arguments and return argument of a function. A value outside the valid range of values produces an error. For details on the TIMESTAMP type, see Teradata Vantage™ - Data Types and Literals, B035-1143.

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

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

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