Timestamp types
timestamp and timestamp with time zone data expresses a date and time in
UTC.
timestamp info
| Detail | Info |
|---|---|
| Quick Syntax | TIMESTAMP WITH TIME ZONE '2007-02-01 15:04:05+06' |
| Size | 8 bytes |
| Catalog name | pg_catalog.timestamp |
| OID | 1083 |
| Min value | 4713 BC |
| Max value | 294276 AD |
| Max resolution | 1 microsecond |
timestamp with time zone info
| Detail | Info |
|---|---|
| Quick Syntax | TIMESTAMPTZ '2007-02-01 15:04:05+06' |
| Aliases | timestamp with time zone |
| Size | 8 bytes |
| Catalog name | pg_catalog.timestamptz |
| OID | 1184 |
| Min value | 4713 BC |
| Max value | 294276 AD |
| Max resolution | 1 microsecond |
Syntax
| Field | Use |
|---|---|
| WITH TIME ZONE | Apply the tz_offset field. |
| WITHOUT TIME ZONE | Ignore the tz_offset field. This is the default if neither WITH TIME ZONE nor WITHOUT TIME ZONE is specified. |
| TIMESTAMPTZ | A shorter alias for TIMESTAMP WITH TIME ZONE. |
| precision | The number of digits of precision to use to represent fractional seconds. If unspecified, timestamps use six digits of precision—i.e., they have a resolution of one microsecond. |
| date_str | A string representing a date in Y-M-D, Y M-D, Y M D or YMD format. |
| time_str | A string representing a time of day in H:M:S.NS format. |
| tz_offset | The timezone’s distance, in hours, from UTC. |
Details
timestampandtimestamp with time zonestore data in UTC.- The difference between the two types is that
timestamp with time zonecan read or write timestamps with the offset specified by the timezone. Importantly,timestamp with time zoneitself doesn’t store any timezone data; Materialize simply performs the conversion from the time provided and UTC. - Materialize assumes all clients expect UTC time, and does not currently support any other timezones.
Valid casts
In addition to the casts listed below, timestamp and timestamptz can be cast to and from each other implicitly.
From timestamp or timestamptz
You can cast timestamp or timestamptz to:
To timestamp or timestamptz
You can cast the following types to timestamp or timestamptz:
Valid operations
timestamp and timestamp with time zone data (collectively referred to as
timestamp/tz) supports the following operations with other types.
| Operation | Computes |
|---|---|
date + interval |
timestamp/tz |
date - interval |
timestamp/tz |
date + time |
timestamp/tz |
timestamp/tz + interval |
timestamp/tz |
timestamp/tz - interval |
timestamp/tz |
timestamp/tz - timestamp/tz |
interval |
Examples
Return timestamp
SELECT TIMESTAMP '2007-02-01 15:04:05' AS ts_v;
ts_v
---------------------
2007-02-01 15:04:05
Return timestamp with time zone
SELECT TIMESTAMPTZ '2007-02-01 15:04:05+06' AS tstz_v;
tstz_v
-------------------------
2007-02-01 09:04:05 UTC