Skip to main content
Version: Candidate-4.0

to_datetime_ntz

Converts a Unix timestamp to a DATETIME type value. This function is always based on UTC+0, regardless of the time zone settings.

If you want to convert a Unix timestamp to a DATETIME type value based on the current time zone, you can use to_datetime.

Syntax​

DATETIME to_datetime_ntz(BIGINT unix_ts, INT scale)

Parameters​

NameTypeRequiredDescription
unix_tsBIGINTYesThe Unix timestamp to convert. For example, 1598306400 (seconds) and 1598306400123 (milliseconds).
scaleINTNoTime precision. Valid values:
  • 0 indicates seconds (Default).
  • 3 indicates milliseconds.
  • 6 indicates microseconds.

Return Value​

  • On success: returns a DATETIME value based on UTC+0.
  • On failure: returns NULL. Common reasons include:
    • Invalid scale (not 0, 3, or 6)
    • Value out of DATETIME range (0001-01-01 to 9999-12-31)

Example​

SELECT to_datetime_ntz(1598306400);
-- Returns: 2020-08-24 22:00:00

SELECT to_datetime_ntz(1598306400123456, 6);
-- Returns: 2020-08-24 22:00:00.123456