# How to Get the Unix Timestamp in PostgreSQL

> To get the Unix Timestamp in PostgreSQL, the EXTRACT() and DATE_PART() functions are used with the EPOCH argument.

The “ **UNIX TIMESTAMP** ” also known as the “ **Unix Epoch** ” or “ **POSIX** ” represents a DateTime in seconds, elapsed since 00:00:00 UTC, January 1, 1970. Database users may need to retrieve the UNIX timestamp when manipulating the date and time values. In such situations, the EXTRACT() and DATE_PART() functions can be used with the EPOCH argument.

This post illustrates a practical guide to getting the Unix TIMESTAMP in Postgres via the EXTRACT() and DATE_PART() functions.

 **How to Get the Unix Timestamp in Postgres?**

Pass the EPOCH argument to the **EXTRACT()** function or the **DATE_PART()** function to get a timestamp in Unix format.

The below syntax explains how to get a Unix timestamp using the EXTRACT() function:
    
    
    EXTRACT(EPOCH FROM 'timestamp');

The below snippet demonstrates how to get a Unix timestamp using the DATE_PART() function:
    
    
    DATE_PART('EPOCH', 'timestamp');

Let’s put these concepts into practice!

 **Example 1: How to Get Unix Timestamp From Current Timestamp**

In Postgres, the CURRENT_TIMESTAMP function returns the current DateTime. However, passing EPOCH and the CURRENT_TIMESTAMP as arguments to the EXTRACT() function will retrieve the current DateTime as Unix Timestamp:
    
    
    SELECT CURRENT_TIMESTAMP, 
    EXTRACT(EPOCH FROM CURRENT_TIMESTAMP) As Unix_timestamp;

Alternatively, you can use the DATE_PART() function to get the Unix Timestamp from the current timestamp:
    
    
    SELECT CURRENT_TIMESTAMP, 
    DATE_PART('EPOCH', CURRENT_TIMESTAMP) As Unix_timestamp;

 **Example 2: How to Get Unix Timestamp From a Specific Timestamp**

The EXTRACT() function and the DATE_PART() function assist us in getting the Unix timestamp from a specific timestamp:
    
    
    SELECT DATE_PART('EPOCH', TIMESTAMP '2020-12-11 02:12:16.906072'),
    EXTRACT('EPOCH' FROM TIMESTAMP '2020-12-11 02:12:16.906072');

This way, you can get a Unix timestamp from a specific timestamp using the EXTRACT() and DATE_PART() functions.

 **Example 3: How to Get Unix Timestamp From a Specific TIMESTAMPTZ**

Similarly, you can use the EXTRACT() or DATE_PART() functions to get the Unix timestamp from a “timestamp with a time zone”:
    
    
    SELECT DATE_PART('EPOCH', TIMESTAMP '2020-12-11 02:12:16.906072-08'),
    EXTRACT('EPOCH' FROM TIMESTAMP '2020-12-11 02:12:16.906072-08');

 **Example 4: How to Get Unix Timestamp From Current Date**

To get a Unix timestamp from the current date or a specific date, the EXTRACT() or DATE_PART() functions can be used as follows:
    
    
    SELECT DATE_PART('EPOCH', CURRENT_DATE),
    EXTRACT('EPOCH' FROM DATE '2020-12-11');

The Unix timestamp is extracted from the current date using the DATE_PART() function. While the Unix timestamp is extracted from a specific date using the EXTRACT() function.

 **Example 5: How to Get Unix Timestamp From an Interval**

In the following example, the DATE_PART() and EXTRACT() functions are used to get the Unix timestamp from a specific interval:
    
    
    SELECT DATE_PART('EPOCH', INTERVAL '1 Month 2 Days'),
    EXTRACT('EPOCH' FROM INTERVAL '1 Month 2 Days');

That’s all from this post.

 **Conclusion**

To get the Unix Timestamp in PostgreSQL, the EXTRACT() and DATE_PART() functions are used with the EPOCH argument. Using these functions, a user can get a Unix timestamp from a date, interval, or timestamp. To do that, pass the EPOCH as a first argument to the EXTRACT() function or the DATE_PART() function and a date, interval, or timestamp as the second argument to get a timestamp in Unix format. This post explained various methods to return a Unix timestamp in PostgreSQL.

---
[View this page online](https://www.commandprompt.com/education/how-to-get-the-unix-timestamp-in-postgresql/)