Date & Time

DATE_SUB

MySQLMySQL

Mengurangi interval waktu dari tanggal. Kebalikan dari DATE_ADD.

Tipe hasil: DATE/DATETIMEDiperbarui: 7 Jan 2026

Syntax

SQL
DATE_SUB(date, INTERVAL expr unit)

Parameter

datedate/datetimewajib

Tanggal awal

exprinteger/stringwajib

Nilai interval yang dikurangi

unitkeywordwajib

Unit interval (YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, dll)

Contoh Penggunaan

Kurangi 30 Hari

SQL
1SELECT DATE_SUB(CURDATE(), INTERVAL 30 DAY) AS past_date;

Mendapatkan tanggal 30 hari lalu.

Hasil
past_date: (30 days ago)

Bulan Lalu

SQL
1SELECT * FROM orders
2WHERE order_date >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH);

Mencari order dalam 1 bulan terakhir.

Hasil
(orders from last month)

Tahun Fiskal Lalu

SQL
1SELECT DATE_SUB('2024-04-01', INTERVAL 1 YEAR) AS prev_fiscal;

Awal tahun fiskal sebelumnya.

Hasil
prev_fiscal: 2023-04-01

Fungsi Equivalen di Database Lain