Aggregate

LAST

DuckDBDuckDB

Mengembalikan nilai terakhir dari sebuah kolom dalam group. Kebalikan dari FIRST.

Tipe hasil: Sama dengan tipe inputDiperbarui: 6 Jan 2026

Syntax

SQL
LAST(expression [ORDER BY sort_expression])

Parameter

expressionanywajib

Kolom atau ekspresi yang akan diambil nilai terakhirnya

ORDER BYclauseopsional

Opsional tapi direkomendasikan. Menentukan urutan untuk menentukan 'terakhir'

Contoh Penggunaan

Mengambil Order Terakhir per Customer

SQL
1SELECT
2 customer_id,
3 LAST(order_id ORDER BY order_date) as last_order_id,
4 LAST(order_date ORDER BY order_date) as last_order_date
5FROM orders
6GROUP BY customer_id;

Mendapatkan order terakhir untuk setiap customer.

Hasil
customer_idlast_order_idlast_order_date
14582024-03-10
25122024-03-15

Analisis Perubahan Harga

SQL
1SELECT
2 product_id,
3 FIRST(price ORDER BY date) as initial_price,
4 LAST(price ORDER BY date) as current_price,
5 LAST(price ORDER BY date) - FIRST(price ORDER BY date) as price_change
6FROM price_history
7GROUP BY product_id;

Membandingkan harga awal dan harga terakhir untuk melihat perubahan.

Hasil
product_idinitial_pricecurrent_priceprice_change
110000012500025000
2500000450000-50000