Window

LAG

BigQueryBigQuery

Mengakses nilai dari baris sebelumnya dalam partition berdasarkan offset yang ditentukan.

Tipe hasil: Same as input expressionDiperbarui: 7 Jan 2026

Syntax

SQL
LAG(expression [, offset [, default_value]]) OVER ([PARTITION BY partition_expression] ORDER BY sort_expression)

Parameter

expressionanywajib

Kolom atau ekspresi yang nilainya diambil

ORDER BYexpressionwajib

Menentukan urutan baris

offsetINT64opsional

Jumlah baris ke belakang (default: 1)

Default: 1

default_valuesame as expressionopsional

Nilai jika tidak ada baris sebelumnya

Contoh Penggunaan

Perbandingan dengan Bulan Sebelumnya

SQL
1SELECT
2 month,
3 revenue,
4 LAG(revenue) OVER (ORDER BY month) as prev_month_revenue,
5 revenue - LAG(revenue) OVER (ORDER BY month) as growth
6FROM `project.dataset.monthly_sales`;

Menghitung pertumbuhan bulanan dengan membandingkan revenue.

Hasil
monthrevenueprev_monthgrowth
2024-01100000NULLNULL
2024-0212000010000020000
2024-03115000120000-5000

LAG dengan Default Value

SQL
1SELECT
2 date,
3 stock_price,
4 LAG(stock_price, 1, stock_price) OVER (ORDER BY date) as prev_price
5FROM `project.dataset.stocks`;

Menggunakan harga saat ini sebagai default untuk baris pertama.