Date & Time

DATE_SUB

DuckDBDuckDB

Mengurangi interval waktu dari sebuah tanggal atau timestamp. Kebalikan dari DATE_ADD.

Tipe hasil: DATE/TIMESTAMP (sesuai input)Diperbarui: 6 Jan 2026

Syntax

SQL
DATE_SUB(date, interval) | date - INTERVAL 'n unit'

Parameter

dateDATE/TIMESTAMPwajib

Tanggal atau timestamp awal

intervalINTERVALwajib

Interval yang dikurangi

Contoh Penggunaan

Mengurangi Hari

SQL
1SELECT
2 CURRENT_DATE as today,
3 CURRENT_DATE - INTERVAL '7 days' as last_week,
4 CURRENT_DATE - INTERVAL '30 days' as last_month;

Menghitung tanggal 7 hari dan 30 hari yang lalu.

Hasil
todaylast_weeklast_month
2024-03-152024-03-082024-02-14

Filter Data 7 Hari Terakhir

SQL
1SELECT *
2FROM orders
3WHERE order_date >= CURRENT_DATE - INTERVAL '7 days';

Mengambil order dalam 7 hari terakhir.

Periode Bulan Lalu

SQL
1SELECT
2 COUNT(*) as total_orders,
3 SUM(amount) as total_revenue
4FROM orders
5WHERE order_date >= DATE_TRUNC('month', CURRENT_DATE) - INTERVAL '1 month'
6 AND order_date < DATE_TRUNC('month', CURRENT_DATE);

Menghitung statistik bulan lalu secara lengkap.

Data N Hari Terakhir

SQL
1SELECT
2 order_date,
3 COUNT(*) as daily_orders
4FROM orders
5WHERE order_date >= CURRENT_DATE - INTERVAL '14 days'
6GROUP BY order_date
7ORDER BY order_date;

Mengambil trend order 14 hari terakhir.

Fungsi Terkait