Date & Time

AGE

DuckDBDuckDB

Menghitung selisih waktu antara dua timestamp dalam format interval yang readable (tahun, bulan, hari).

Tipe hasil: INTERVALDiperbarui: 6 Jan 2026

Syntax

SQL
AGE(timestamp1, timestamp2) | AGE(timestamp)

Parameter

timestamp1TIMESTAMP/DATEwajib

Timestamp akhir (atau timestamp yang dihitung dari sekarang)

timestamp2TIMESTAMP/DATEopsional

Timestamp awal. Jika tidak ada, menggunakan CURRENT_DATE

Contoh Penggunaan

Menghitung Usia Seseorang

SQL
1SELECT
2 name,
3 birth_date,
4 AGE(birth_date) as age
5FROM employees;

Menghitung usia dari tanggal lahir sampai sekarang.

Hasil
namebirth_dateage
Budi1990-05-1534 years 1 month
Ani1995-12-2028 years 6 months
Eko2000-01-1024 years 5 months

Menghitung Masa Kerja

SQL
1SELECT
2 name,
3 join_date,
4 AGE(CURRENT_DATE, join_date) as tenure
5FROM employees
6ORDER BY tenure DESC;

Menghitung berapa lama karyawan sudah bekerja.

Hasil
namejoin_datetenure
Budi2015-03-019 years 3 months
Ani2020-06-154 years
Eko2023-01-101 year 5 months

Menghitung Durasi Project

SQL
1SELECT
2 project_name,
3 start_date,
4 end_date,
5 AGE(end_date, start_date) as duration
6FROM projects
7WHERE status = 'completed';

Menghitung durasi project dari mulai sampai selesai.

Hasil
project_namestart_dateend_dateduration
Website v22024-01-152024-04-303 months 15 days
Mobile App2023-06-012024-02-288 months 27 days