PostgreSQL では、AGE() 関数を使用して誕生日から年齢を計算できます。この関数は、現在の日付と指定された日付 (誕生日) の間の間隔を返します。方法を見てみましょう
- AGE() 関数を使用して、PostgreSQL で誕生日から年齢を取得します。
構文:
AGE(timestamp, timestamp)
timestamp:年齢を計算する日付またはタイムスタンプ。
AGE() 関数を使用する場合、現在の日付 (通常は CURRENT_DATE または NOW()) と誕生日を指定して年齢を取得できます。
例 1: PostgreSQL で固定日付から年齢を計算する
特定の誕生日(例:1990-03-01)から年齢を計算するには、次のようにします。
SELECT AGE('2024-06-28', '1990-03-01') AS age;出力:

例2: 現在の年齢から年齢を計算するPostgreSQL の日付
現在の日付から年齢を計算するには:
SELECT AGE(CURRENT_DATE, '1990-03-01') AS age;出力:

例 3: PostgreSQL テーブルの各行の年齢を計算する
学生の誕生日を含む列 birthdaytime を持つテーブル Student_details があるとします。

各生徒の年齢を計算するには、AGE()関数を使用すると、年齢を年、月、日で表示できます。
select *,age(CURRENT_DATE,date(birthdaytime)) as age from student_detail出力:

例4: 年齢のみを抽出する
年齢のみを抽出したい場合は、まず AGE() 関数を使用して、年齢を年、月、日で取得し、次に DATE_PART() 関数を使用してそこから年のみを抽出します。
SELECT *, DATE_PART('year', AGE(CURRENT_DATE, birthdaytime)) AS age_years FROM student_detail;出力:






