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

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

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

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

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

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

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