# Date/Time Functions

The date/time functions provide a powerful set of tools for manipulating various date/time types.

Table 5-6. Date/Time Functions

Function Returns Description Example
abstime(timestamp) abstime convert to abstime abstime(timestamp 'now')
age(timestamp) interval preserve months and years age(timestamp '1957-06-13')
age(timestamp,timestamp) interval preserve months and years age('now', timestamp '1957-06-13')
date_part(text,timestamp) float8 portion of date date_part('dow',timestamp 'now')
date_part(text,interval) float8 portion of time date_part('hour',interval '4 hrs 3 mins')
date_trunc(text,timestamp) timestamp truncate date date_trunc('month',abstime 'now')
interval(reltime) interval convert to interval interval(reltime '4 hours')
isfinite(timestamp) bool a finite time? isfinite(timestamp 'now')
isfinite(interval) bool a finite time? isfinite(interval '4 hrs')
reltime(interval) reltime convert to reltime reltime(interval '4 hrs')
timestamp(date) timestamp convert to timestamp timestamp(date 'today')
timestamp(date,time) timestamp convert to timestamp timestamp(timestamp '1998-02-24',time '23:07');
to_char(timestamp,text) text convert to string to_char(timestamp '1998-02-24','DD');

For the date_part and date_trunc functions, arguments can be `year', `month', `day', `hour', `minute', and `second', as well as the more specialized quantities `decade', `century', `millennium', `millisecond', and `microsecond'. date_part allows `dow' to return day of week, 'week' to return the ISO-defined week of year, and `epoch' to return seconds since 1970 (for timestamp) or 'epoch' to return total elapsed seconds (for interval).

## Submit correction

If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.