INTERVAL DAY TO SECOND Literals - Teradata VantageCloud Lake

Lake - Working with SQL

Deployment
VantageCloud
Edition
Lake
Product
Teradata VantageCloud Lake
Release Number
Published
February 2025
ft:locale
en-US
ft:lastEdition
2025-11-21
dita:mapPath
jbe1714339405530.ditamap
dita:ditavalPath
pny1626732985837.ditaval
dita:id
jbe1714339405530

Declares an INTERVAL DAY TO SECOND value in an expression.

Result type: INTERVAL DAY TO SECOND Data Type

ANSI Compliance

INTERVAL DAY TO SECOND literals are partly ANSI SQL:2011 compliant.

In the ANSI definition, the optional sign is within the apostrophes; the Teradata implementation places the optional sign outside the apostrophes.

Syntax

INTERVAL [ sign ] 'string' DAY TO SECOND

Syntax Elements

sign
An optional minus sign to indicate a negative interval. The default is a positive interval.
The sign must be outside the apostrophes that enclose string.
string
One to four digits representing the number of days, followed by a pad character and two digits representing the number of hours, followed by a colon and two digits representing the number of minutes. This is followed by a colon and two digits representing the number of seconds, and optionally followed by a decimal point and 1 to 6 digits representing fractional seconds. The decimal point is required if the fractional seconds are included. Besides the pad character, no other spaces or new line characters are allowed between the apostrophes.
For the digits representing the number of days, only digits are parsed and converted to numeric. For example, '1.05' is treated as '105'.

Examples: INTERVAL DAY TO SECOND Literal

The following example adds an interval of 30 days, 12 hours, 30 minutes, and 30.5 seconds to the current system timestamp.

SELECT INTERVAL '30 12:30:30.5' DAY TO SECOND + CURRENT_TIMESTAMP;

The result looks like this:

( 30 12:30:30.5+Current TimeStamp)
----------------------------------
  1999-12-04 03:19:27.780000+00:00

In the following query, the first decimal point is ignored and the result is an interval of 10 days, 10 hours, 30 minutes, and 30.5 seconds.

SELECT INTERVAL '1.0 10:30:30.5' DAY TO SECOND;