Categories:

Context Functions (General)

CURRENT_TIMESTAMP

Returns the current timestamp for the system.

Aliases:

LOCALTIMESTAMP , GETDATE , SYSTIMESTAMP

Syntax

CURRENT_TIMESTAMP( [ <fract_sec_precision> ] )

CURRENT_TIMESTAMP

Arguments

fract_sec_precision

This optional argument indicates the precision with which to report the time. For example, a value of 3 says to use 3 digits after the decimal point – i.e. to specify the time with a precision of milliseconds.

The default precision is 9 (nanoseconds).

Valid values range from 0 - 9. However, most platforms do not support true nanosecond precision; the precision that you get might be less than the precision you specify. In practice, precision is usually approximately milliseconds (3 digits) at most.

Note

  • Fractional seconds are only displayed if they have been explicitly set in the TIME_OUTPUT_FORMAT parameter for the session, e.g. 'HH24:MI:SS.FF'.

Returns

Returns the current timestamp in the local time zone.

Usage Notes

  • The setting of the TIMEZONE session parameter affects the return value.

  • The setting of the TIMESTAMP_TYPE_MAPPING parameter does not affect the return value.

  • To comply with ANSI standards, this function can be called without parentheses.

  • Do not use the returned value for precise time ordering between concurrent queries (processed by the same virtual warehouse) because the queries might be serviced by different servers (in the warehouse).

  • The aliases SYSTIMESTAMP and GETDATE differ from CURRENT_TIMESTAMP in the following ways:

    • They do not support the fract_sec_precision parameter.

    • These functions cannot be called without parentheses.

Examples

Set the time output format to YYYY-MM-DD HH24:MI:SS.FF, then return the current timestamp with fractional seconds precision first set to 2, 4, and then the default (9):

ALTER SESSION SET TIMESTAMP_OUTPUT_FORMAT = 'YYYY-MM-DD HH24:MI:SS.FF';

SELECT CURRENT_TIMESTAMP(2);

+------------------------+
| CURRENT_TIMESTAMP(2)   |
|------------------------|
| 2017-04-26 22:37:22.83 |
+------------------------+

SELECT CURRENT_TIMESTAMP(4);

+--------------------------+
| CURRENT_TIMESTAMP(4)     |
|--------------------------|
| 2017-04-26 22:37:25.3530 |
+--------------------------+

SELECT CURRENT_TIMESTAMP;

+-------------------------------+
| CURRENT_TIMESTAMP             |
|-------------------------------|
| 2017-04-26 22:37:28.188000000 |
+-------------------------------+