Window

LEAD

PostgreSQLPostgreSQL

Mengakses nilai dari baris selanjutnya dalam result set. Kebalikan dari LAG.

Tipe hasil: same as expression

Syntax

SQL
LEAD(expression [, offset [, default]]) OVER ([PARTITION BY partition_expression] ORDER BY sort_expression)

Parameter

expressionanywajib

Kolom atau ekspresi yang nilainya akan diambil

offsetintegeropsional

Berapa baris ke depan (default: 1)

Default: 1

defaultanyopsional

Nilai default jika tidak ada baris selanjutnya

Contoh Penggunaan

Melihat Task Selanjutnya

SQL
1SELECT
2 task_name,
3 due_date,
4 LEAD(task_name) OVER (ORDER BY due_date) as next_task,
5 LEAD(due_date) OVER (ORDER BY due_date) as next_due_date
6FROM tasks;

Menampilkan task saat ini dan task selanjutnya.

Hasil
task_namedue_datenext_tasknext_due_date
Design2024-03-10Development2024-03-20
Development2024-03-20Testing2024-03-25
Testing2024-03-25NULLNULL

Menghitung Durasi Event

SQL
1SELECT
2 event_name,
3 start_time,
4 LEAD(start_time) OVER (ORDER BY start_time) - start_time as duration
5FROM events;

Menghitung durasi setiap event (sampai event berikutnya dimulai).