Subtract hour from current datetime(timestamp) in PostgreSQL

In order to subtract hour from current datetime(timestamp) in PostgreSQL we will be using the two approaches one by using the make_interval() and  other by Interval datatype. Here are examples of both the approaches. Also, we will look at how to Subtract hours from current datetime(timestamp) column in PostgreSQL table.

 

Subtract hours from current timestamp in PostgreSQL using INTERVAL data type:

We will be Using the INTERVAL data type to subtract hours from current datetime in PostgreSQL. When we subtract hours from current datetime(timestamp) using INTERVAL datatype the output will be in datetime(timestamp) format. In below example, we have subtracted 1 hour from current datetime using Interval data type.

Example 1 using CURRENT_TIMESTAMP:

 


SELECT CURRENT_TIMESTAMP::timestamp - INTERVAL '1 hours' AS new_datetime

Output:

Subtract hour from current datetime(timestamp) in PostgreSQL 1

           

Example 2 using NOW():

 

SELECT NOW()::timestamp - INTERVAL '1 hours' AS new_datetime

Output:

Subtract hour from current datetime(timestamp) in PostgreSQL 1           

 

Subtract hours to datetime in PostgreSQL using make_interval() function:

We will be Using the make_interval() function to subtract hours from datetime in PostgreSQL. When we subtract hours from datetime using the make_interval() function, the output will be in current datetime(timestamp) format. In below example, we have subtracted 1 hour to timestamp

Example 1 using CURRENT_TIMESTAMP:

 

SELECT CURRENT_TIMESTAMP::timestamp - make_interval(hours => 1) as new_datetime

Output:

Subtract hour from current datetime(timestamp) in PostgreSQL 1

 

Example 2 using NOW():

 

SELECT NOW()::timestamp - make_interval(hours => 1) as new_datetime

Output:

Subtract hour from current datetime(timestamp) in PostgreSQL 1

 

 

Subtract hours from current datetime(timestamp) column in PostgreSQL table using Interval datatype:

We will be using below fruits table for our example to depict on how to subtract hours from current datetime(timestamp) column in PostgreSQL table.

fruits:

Subtract hour from current datetime(timestamp) in PostgreSQL 2

We have subtracted 2 hours from datetime column using INTERVAL datatype in postgresql and new column named new_date is being created as shown below.

Example 1 : using NOW() function

 

select *,NOW()::timestamp as current_dt, NOW()::timestamp - INTERVAL '2 HOURS' as new_date from fruits

OR

Example 2 : using CURRENT_TIMESTAMP

 

select *,CURRENT_TIMESTAMP::timestamp as current_dt, CURRENT_TIMESTAMP::timestamp - INTERVAL '2 HOURS' as new_date from fruits

Output:

Subtract hour from current datetime(timestamp) in PostgreSQL 3

 

 

Subtract hours from datetime column in PostgreSQL table using make_interval() function:

We have subtracted 2 hours from datetime column using make_interval() function in postgresql and new column named new_date is being created as shown below.

Example 1 : using NOW() function

 

select *,NOW()::timestamp as current_dt, NOW()::timestamp - make_interval(hours => 2) as new_date from fruits

OR

Example 2 : using CURRENT_TIMESTAMP

 

select *,CURRENT_TIMESTAMP::timestamp as current_dt, CURRENT_TIMESTAMP::timestamp - make_interval(hours => 2) as new_date from fruits

 Output:

Subtract hour from current datetime(timestamp) in PostgreSQL 3

 

Author

  • Sridhar Venkatachalam

    With close to 10 years on Experience in data science and machine learning Have extensively worked on programming languages like R, Python (Pandas), SAS, Pyspark.

    View all posts