In order to subtract days from date in PostgreSQL we will using two approach one by using the – operator and other using the Interval. datatype. Here are examples of both approaches. Also, we will look at how to Subtract days from datetime column in PostgreSQL table.
Subtract days from date in PostgreSQL using simple subtraction (-) operator:
In the below example we have used simple subtraction to Subtract days from date in PostgreSQL. We have subtracted 7 days from date in below example.
Example 1:
SELECT '2024-02-24'::date - 7 AS new_date;
Output:
Subtract days from datetime in PostgreSQL using INTERVAL data type:
We will be Using the INTERVAL data type to subtract days from date in PostgreSQL. When we subtract days from date using INTERVAL datatype the output will be in datetime(timestamp) format. In below example, we have subtracted 7 days from date using Interval data type.
Example 1:
SELECT '2024-02-24'::date - INTERVAL '7 DAYS' as new_date
Output:
Subtract days from datetime in PostgreSQL using make_interval() function:
We will be Using the make_interval() function to subtract days from date in PostgreSQL. When we subtract days from datetime using the make_interval() function, the output will be in datetime(timestamp) format. In below example, we have subtracted 7 days from date
Example 1:
SELECT '2024-02-24'::date - make_interval(days => 7) as new_date
Output:
Subtract days from datetime column in PostgreSQL table using subtraction (-) operator:
We will be using below student_detail1 table for our example to depict on how to subtract days from datetime column in postgresql table.
student_detail1:
We will have subtracted 7 days from date column using simple subtraction operator (-) in PostgreSQL and new column named new_date is being created as shown below.
SELECT *, birthdaytime::date - 7 as new_date from student_detail1
Output:
Subtract days from datetime column in PostgreSQL table using Interval datatype:
We will have subtracted 7 days from date column using INTERVAL datatype in PostgreSQL and new column named new_date is being created as shown below.
select *, birthdaytime::timestamp - INTERVAL '7 DAYS' as new_date from student_detail1
Output:
Subtract days from datetime column in PostgreSQL table using make_interval() function:
We will have subtracted 7 days from date column using make_interval() function in postgresql and new column named new_date is being created as shown below.
select *,birthdaytime - make_interval(days => 7) as new_date from student_detail1
Output: