Converts TIME or TIME WITH TIME ZONE to TIME or TIME WITH TIME ZONE using optional data attributes.
CAST Syntax
CAST ( time_expression AS TIME [ ( fractional_seconds_precision ) ] [ WITH TIME ZONE ] [ AT { LOCAL | SOURCE [ TIME ZONE ] | [ TIME ZONE ] { expression | time_zone_string } } ] [ data_attribute [...] ] )
- time_expression
-
The TIME expression to be converted.
- fractional_seconds_precision
-
A single digit representing the number of significant digits in the fractional portion of the SECOND field. The valid range is 0 through 6. The default is 6.
- AT LOCAL
-
Use the time zone displacement based on the current session time zone.
- AT SOURCE [TIME ZONE]
-
Use the time zone associated with timestamp_expression when:
- AT SOURCE TIME ZONE is specified.
- AT SOURCE is specified without TIME ZONE and there is no column named source in the scope.
Otherwise, if AT SOURCE is specified without TIME ZONE and a column named source exists, then SOURCE references this column, and the value of the column is used as the time zone displacement for the CAST. If needed, the column value is implicitly converted to type INTERVAL HOUR(2) TO MINUTE.
- AT [TIME ZONE] expression
-
Use the time zone displacement defined by expression.
The data type of expression should be INTERVAL HOUR(2) TO MINUTE or it must be a data type that can be implicitly converted to INTERVAL HOUR(2) TO MINUTE.
- AT [TIME ZONE] time_zone_string
- time_zone_string determines the time zone displacement.
- data_attribute
-
One of the following data attributes:
- FORMAT
- NAMED
- TITLE
As an extension to ANSI, CAST permits the use of the FORMAT phrase to enable alternative output formatting for DateTime data.
The AT clause is ANSI SQL:2011 compliant.
As an extension to ANSI, the AT clause is supported when using CAST to convert from TIME (with or without time zone) to TIME WITH TIME ZONE. In addition, you can specify the time zone displacement using additional expressions besides an INTERVAL expression.
TIME (without time zone) is not ANSI SQL:2011 compliant. Teradata Database internally converts a TIME value to UTC based on the current session time zone or on a specified time zone.