Mengembalikan nilai terakhir dalam window frame. Kebalikan dari FIRST_VALUE.
Sama dengan tipe expressionDiperbarui: 13 Jun 2026LAST_VALUE(expression) OVER ([PARTITION BY col] ORDER BY col [frame_clause])Kolom atau ekspresi yang akan diambil nilai terakhirnya
Opsional. Membagi hasil menjadi partisi
Menentukan urutan dalam window
Opsional. Mendefinisikan window frame
1 SELECT 2 product_id, 3 date, 4 price, 5 LAST_VALUE(price) OVER ( 6 PARTITION BY product_id 7 ORDER BY date 8 ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING 9 ) as latest_price 10 FROM price_history;
Mendapatkan harga terbaru dengan frame clause yang benar.
| product_id | date | price | latest_price |
|---|---|---|---|
| 1 | 2024-01-01 | 100000 | 115000 |
| 1 | 2024-02-01 | 120000 | 115000 |
| 1 | 2024-03-01 | 115000 | 115000 |
1 -- SALAH: akan return current row value 2 SELECT 3 date, 4 price, 5 LAST_VALUE(price) OVER (ORDER BY date) as wrong_last 6 FROM prices; 7 8 -- BENAR: dengan frame clause 9 SELECT 10 date, 11 price, 12 LAST_VALUE(price) OVER ( 13 ORDER BY date 14 ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING 15 ) as correct_last 16 FROM prices;
Demonstrasi pentingnya frame clause untuk LAST_VALUE.
1 SELECT 2 employee_id, 3 review_date, 4 target, 5 LAST_VALUE(target) OVER ( 6 PARTITION BY employee_id 7 ORDER BY review_date 8 ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING 9 ) as final_target 10 FROM performance_reviews;
Menampilkan target terbaru setiap karyawan.
Sudah paham LAST_VALUE? Latih langsung di browser
Latihan interaktif, langsung di browser.