Window
MySQL
LAG
Mengakses nilai dari baris sebelumnya dalam partition. Berguna untuk perbandingan dengan periode sebelumnya.
Tipe hasil:
Same as exprDiperbarui: 16 Mei 2026Syntax
SQL
LAG(expr [, offset [, default]]) OVER ([PARTITION BY col] ORDER BY col)Parameter
exprexpressionwajib
Kolom atau ekspresi yang diambil nilainya
ORDER BYcolumn(s)wajib
Kolom untuk menentukan urutan
offsetintegeropsional
Jumlah baris ke belakang (default 1)
Default: 1
defaultanyopsional
Nilai jika tidak ada baris sebelumnya (default NULL)
Contoh Penggunaan
Nilai Sebelumnya
SQL
1 SELECT date, revenue, 2 LAG(revenue) OVER (ORDER BY date) AS prev_revenue 3 FROM daily_sales;
Mengambil revenue hari sebelumnya.
Hasil
(revenue with previous day value)
Pertumbuhan Bulanan
SQL
1 SELECT month, revenue, 2 revenue - LAG(revenue) OVER (ORDER BY month) AS growth 3 FROM monthly_sales;
Menghitung pertumbuhan dari bulan sebelumnya.
Hasil
(monthly revenue growth)
Dengan Default Value
SQL
1 SELECT date, price, 2 LAG(price, 1, price) OVER (ORDER BY date) AS prev_price 3 FROM stock_prices;
Default ke price sendiri jika tidak ada sebelumnya.
Hasil
(prices with previous, defaulting to self)
Pertanyaan Umum tentang LAG
Apa itu fungsi LAG di MySQL?
Mengakses nilai dari baris sebelumnya dalam partition. Berguna untuk perbandingan dengan periode sebelumnya. Di MySQL, fungsi LAG termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan LAG di MySQL?
Gunakan sintaks berikut: LAG(expr [, offset [, default]]) OVER ([PARTITION BY col] ORDER BY col). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi LAG?
Fungsi LAG mengembalikan nilai bertipe Same as expr. 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 LAG?
Fungsi ini memiliki 2 parameter wajib dan 2 parameter opsional. Parameter yang digunakan: expr (expression, wajib): Kolom atau ekspresi yang diambil nilainya; offset (integer, opsional): Jumlah baris ke belakang (default 1); default (any, opsional): Nilai jika tidak ada baris sebelumnya (default NULL); ORDER BY (column(s), wajib): Kolom untuk menentukan urutan.