PostgreSQLで日付から月を減算するには、2つの方法があります。1つは-
演算子とその他の使用間隔
. データ型。ここでは両方のアプローチの例を示します。また、PostgreSQL テーブルの日付列から月を減算する方法についても説明します。
PostgreSQL で日付から月を減算するINTERVALデータ型の使用:
PostgreSQL で日付から月数を減算するには、INTERVAL データ型を使用します。INTERVAL データ型を使用して日付から月数を減算すると、出力は datetime(timestamp) 形式になります。以下の例では、INTERVAL データ型を使用して日付から 3 か月を減算しています。
例1:
SELECT '2024-02-24'::date - INTERVAL '3 Months' as new_date
出力:

PostgreSQL で日付から月数を減算するmake_interval() 関数の使用:
私たちは間隔を作る()PostgreSQLで日付から月数を減算する関数。間隔を作る()関数の出力はdatetime(timestamp)形式になります。以下の例では、日付から3か月を減算しています。
例1:
SELECT '2024-02-24'::date - make_interval(months => 3) as new_date
出力:

PostgreSQL で日付から月を減算する単純な減算 (-) 演算子を使用する (回りくどい方法):
前述のように、これは回りくどい方法です。以下の例では、PostgreSQL で単純な減算を使用して日付から月数を減算しています。以下の例では、日付から 92 日 (3 か月) を減算しています。
例1:
SELECT '2024-02-24'::date - 92 as new_date
出力:

PostgreSQL テーブルの日付列から月を減算するIntervalデータ型の使用:
この例では、以下の student_detail1 テーブルを使用して、PostgreSQL テーブルの日付列から月を減算する方法を説明します。
student_detail1:

PostgreSQL の INTERVAL データ型を使用して日付列から 3 か月を減算し、以下に示すように new_date という名前の新しい列が作成されます。
select *, birthdaytime::timestamp - INTERVAL '3 MONTHS' as new_date from student_detail1
出力:

PostgreSQL テーブルの日付列から月数を減算するmake_interval() 関数を使用する:
PostgreSQL の make_interval() 関数を使用して日付列から 3 か月を減算し、以下に示すように new_date という名前の新しい列を作成します。
select *,birthdaytime - make_interval(months => 3) as new_date
from student_detail1
出力:

PostgreSQL テーブルの日付列から月数を減算する減算 (-) 演算子を使用する (回りくどい方法):
これも回りくどい方法ですが、PostgreSQL の単純な減算演算子 (-) を使用して日付列から 92 日 (3 か月) を減算し、以下に示すように new_date という新しい列を作成します。
SELECT *, birthdaytime::date - 92 as new_date from student_detail1
出力:
