Extracts the hour from a date or timestamp value and returns it as the number of hours since 1970-01-01 00:00:00 UTC, according to the Iceberg partition transforms specification.
Syntax
Parameters
| Parameter | Description | Supported input types |
|---|
<value> | The date or timestamp value to extract the hour from. | DATE, TIMESTAMP, TIMESTAMPTZ |
Return type
INTEGER
Returns the number of hours since 1970-01-01 00:00:00 UTC. For timestamps before this epoch, returns a negative value.
The ICEBERG_HOUR function can be used in the PARTITION BY clause of CREATE ICEBERG TABLE commands.
CREATE ICEBERG TABLE events
PARTITION BY (iceberg_hour(event_timestamp))
AS SELECT * FROM source_events
WITH LOCATION = my_iceberg_location;
Example
SELECT iceberg_hour('2025-12-15 14:30:00'::TIMESTAMP) AS hour_partition;
Rows: 1Execution time: 5.37ms