Skip to main content
Computes a new TIMESTAMP or TIMESTAMPTZ value by adding or subtracting a specified number of time units from a DATE, TIMESTAMP, or TIMESTAMPTZ value. It’s similar to arithmetic with intervals, but it also allows using a column reference for the <quantity>.

Syntax

DATE_ADD('<unit>', <quantity>, <expression>)

Parameters

ParameterDescription
<unit>A TEXT literal specifying the time unit. Must be one of microsecond,millisecond,second,minute,hour,day,week,month,quarter,year,decade,century, or millennium.
<quantity>An INT or BIGINT specifying how often the time unit should be added or subtracted to <expression>.
<expression>An expression evaluating to type DATE, TIMESTAMP, or TIMESTAMPTZ.

Return Types

TIMESTAMP if <expression> has type DATE or TIMESTAMP. TIMESTAMPTZ if <expression> has type TIMESTAMPTZ.

Example

SELECT date_add('week', 4, '2024-04-15 12:13:14'::timestamp);
date_add timestamp
2024-05-13 12:13:14

Rows: 1Execution time: 5.91ms