Mengambil nilai pertama dan terakhir
Fungsi analitik yang mengembalikan nilai pertama atau terakhir dari daftar berurutan sangat membantu dalam kueri. Pada latihan ini, Anda akan mengenalnya. Sintaksnya adalah:
FIRST_VALUE(numeric_expression) OVER ([PARTITION BY column] ORDER BY column ROW_or_RANGE frame)LAST_VALUE(numeric_expression) OVER ([PARTITION BY column] ORDER BY column ROW_or_RANGE frame)
Anda akan menulis kueri untuk mengambil semua pemilih dari Spanyol dan AS. Lalu, Anda akan menambahkan beberapa perintah dalam kueri untuk mengambil tanggal lahir pemilih termuda dan tertua dari tiap negara. Anda ingin melihat nilai ini pada setiap baris agar dapat membandingkannya dengan tanggal lahir masing-masing pemilih.
Latihan ini adalah bagian dari kursus
Fungsi untuk Memanipulasi Data di SQL Server
Petunjuk latihan
- Ambil tanggal lahir pemilih tertua dari tiap negara.
- Ambil tanggal lahir pemilih termuda dari tiap negara.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
SELECT
first_name + ' ' + last_name AS name,
country,
birthdate,
-- Retrieve the birthdate of the oldest voter per country
___(birthdate)
OVER (PARTITION BY ___ ORDER BY ___) AS oldest_voter,
-- Retrieve the birthdate of the youngest voter per country
___(___)
OVER (___ country ORDER BY ___ ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
) AS youngest_voter
FROM voters
WHERE country IN ('Spain', 'USA');