Skip to main content

EXTRACT

Introduced or updated: v1.2.692

Retrieves the designated portion of a date, time, or timestamp.

See also: DATE_PART

Syntax

EXTRACT( YEAR | QUARTER | MONTH | WEEK | DAY | HOUR | MINUTE | SECOND | DOW | DOY | EPOCH FROM <date_or_time_expr> )
  • DOW: Day of the Week.
  • DOY: Day of the Year.
  • EPOCH: The number of seconds since 1970-01-01 00:00:00.

Return Type

The return type depends on the field being extracted:

  • Returns Integer: When extracting discrete date or time components (e.g., YEAR, MONTH, DAY, DOY, HOUR, MINUTE, SECOND), the function returns an Integer.

    SELECT EXTRACT(DAY FROM now());  -- Returns Integer
    SELECT EXTRACT(DOY FROM now()); -- Returns Integer
  • Returns Float: When extracting EPOCH (the number of seconds since 1970-01-01 00:00:00 UTC), the function returns a Float, as it may include fractional seconds.

    SELECT EXTRACT(EPOCH FROM now());  -- Returns Float

Examples

SELECT NOW(), EXTRACT(DAY FROM NOW()), EXTRACT(DOY FROM NOW()), EXTRACT(EPOCH FROM NOW());

┌────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
now() │ EXTRACT(DAY FROM now()) │ EXTRACT(DOY FROM now()) │ EXTRACT(EPOCH FROM now())
├────────────────────────────┼─────────────────────────┼─────────────────────────┼───────────────────────────┤
2025-02-08 03:51:51.9911678391738986711.991167
└────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
Explore Databend Cloud for FREE
Low-cost
Fast Analytics
Easy Data Ingestion
Elastic Scaling
Try it today