Date & Time

SUBDATE

MySQLMySQL

Mengurangi interval waktu dari tanggal. Sinonim untuk DATE_SUB() atau bisa digunakan dengan jumlah hari.

Tipe hasil: DATE/DATETIMEDiperbarui: 16 Mei 2026

Syntax

SQL
SUBDATE(date, INTERVAL expr unit) | SUBDATE(date, days)

Parameter

dateDATE/DATETIMEwajib

Tanggal awal

exprINT/INTERVALwajib

Jumlah hari atau interval expression

unitkeywordopsional

Unit interval (DAY, MONTH, YEAR, dll) - jika menggunakan INTERVAL

Contoh Penggunaan

Subtract Days Simple

SQL
1SELECT SUBDATE('2024-01-15', 30) AS result;

Kurangi 30 hari dari tanggal.

Hasil
result: 2023-12-16

Subtract Interval

SQL
1SELECT SUBDATE('2024-03-15', INTERVAL 2 MONTH) AS result;

Kurangi 2 bulan dengan INTERVAL.

Hasil
result: 2024-01-15

Grace Period

SQL
1SELECT invoice_id,
2 due_date,
3 SUBDATE(due_date, 7) AS reminder_date
4FROM invoices;

Menghitung tanggal reminder 7 hari sebelum due.

Hasil
(reminder dates)

Pertanyaan Umum tentang SUBDATE

Apa itu fungsi SUBDATE di MySQL?
Mengurangi interval waktu dari tanggal. Sinonim untuk DATE_SUB() atau bisa digunakan dengan jumlah hari. Di MySQL, fungsi SUBDATE termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan SUBDATE di MySQL?
Gunakan sintaks berikut: SUBDATE(date, INTERVAL expr unit) | SUBDATE(date, days). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi SUBDATE?
Fungsi SUBDATE mengembalikan nilai bertipe DATE/DATETIME. Pastikan tipe data hasil sudah sesuai dengan kebutuhan query atau formula kamu. Jika input mengandung nilai NULL, perilaku fungsi dapat berbeda — selalu periksa dokumentasi untuk memastikan hasilnya sesuai ekspektasi.
Apa saja parameter fungsi SUBDATE?
Fungsi ini memiliki 2 parameter wajib dan 1 parameter opsional. Parameter yang digunakan: date (DATE/DATETIME, wajib): Tanggal awal; expr (INT/INTERVAL, wajib): Jumlah hari atau interval expression; unit (keyword, opsional): Unit interval (DAY, MONTH, YEAR, dll) - jika menggunakan INTERVAL.