Window

LEAD

SnowflakeSnowflake

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

Tipe hasil: Same as expressionDiperbarui: 6 Jan 2026

Syntax

SQL
LEAD(expression [, offset [, default]]) OVER ([PARTITION BY partition_expr] ORDER BY order_expr)

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 Event Selanjutnya

SQL
1SELECT
2 event_name,
3 event_date,
4 LEAD(event_name) OVER (ORDER BY event_date) as next_event,
5 LEAD(event_date) OVER (ORDER BY event_date) as next_event_date
6FROM events;

Menampilkan event saat ini dan event selanjutnya.

Hasil
EVENT_NAMEEVENT_DATENEXT_EVENTNEXT_EVENT_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) as next_start,
5 DATEDIFF('MINUTE', start_time,
6 LEAD(start_time) OVER (ORDER BY start_time)
7 ) as duration_minutes
8FROM events;

Menghitung durasi setiap event (sampai event berikutnya dimulai).

Prediksi Next Action

SQL
1SELECT
2 user_id,
3 action,
4 action_time,
5 LEAD(action, 1, 'SESSION_END') OVER (
6 PARTITION BY user_id
7 ORDER BY action_time
8 ) as next_action
9FROM user_actions;

Melihat aksi selanjutnya per user, dengan default 'SESSION_END' jika tidak ada.

Hasil
USER_IDACTIONACTION_TIMENEXT_ACTION
U001page_view10:00:00click
U001click10:01:00purchase
U001purchase10:05:00SESSION_END

Pertanyaan Umum tentang LEAD

Apa itu fungsi LEAD di Snowflake?
Mengakses nilai dari baris selanjutnya dalam result set. Kebalikan dari LAG. Di Snowflake, fungsi LEAD termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan LEAD di Snowflake?
Gunakan sintaks berikut: LEAD(expression [, offset [, default]]) OVER ([PARTITION BY partition_expr] ORDER BY order_expr). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi LEAD?
Fungsi LEAD mengembalikan nilai bertipe Same as expression. 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 LEAD?
Fungsi ini memiliki 1 parameter wajib dan 2 parameter opsional. Parameter yang digunakan: expression (any, wajib): Kolom atau ekspresi yang nilainya akan diambil; offset (INTEGER, opsional): Berapa baris ke depan (default: 1); default (any, opsional): Nilai default jika tidak ada baris selanjutnya.