Lompati ke konten utama
Modul 2 · Pelajaran 4 dari 48/57 dalam kursus~8 min
Pelajaran modul (4/4)

Menghitung dan meringkas: COUNT, AVG, MAX

Sejauh ini setiap SELECT mengembalikan satu baris untuk setiap baris tabel. Fungsi agregat melakukan yang sebaliknya: fungsi tersebut membaca banyak baris dan kembali satu nilai yang merangkumnya.

Yang paling umum adalah:

  • COUNT(*) — ada berapa baris.
  • AVG(column) — rata-rata nilai numerik (abaikan NULL).
  • MAX(column) / MIN(column) — nilai maksimum/minimum.
  • SUM(column) — jumlah nilai numerik.
SQL
SELECT COUNT(*),
       AVG(salary),
       MAX(salary)
FROM employees;

Ketika agregat diterapkan ke seluruh tabel (tanpa GROUP BY, yang mana Anda akan lihat di modul berikutnya) hasilnya adalah satu baris, apa pun berapa banyak baris yang dimiliki tabel sumber.

Menggabungkan dengan WHERE

WHERE memfilter agregasi sebelum: agregat hanya berfungsi pada baris yang lolos filter.

SQL
-- Stipendio medio dei soli dipendenti del Marketing (department_id = 3):
SELECT AVG(salary)
FROM employees
WHERE department_id = 3;

Cobalah

Latihan#sql.m2.l4.e1
Upaya: 0Memuat…

Berapa banyak karyawan yang dipekerjakan sejak 1 Januari 2020? Mengembalikan satu nomor (satu baris, satu kolom).

Memuat editor…
Tunjukkan petunjuk

Fungsi yang menghitung baris adalah COUNT(*).

Solusi tersedia setelah 3 upaya

Tinjau latihan

Latihan#sql.m2.l4.e2
Upaya: 0Memuat…

Dalam satu kueri, hitung gaji rata-rata (AVG) dan maksimum (MAX) karyawan di Pemasaran (id_departemen = 3). Satu baris, dua kolom.

Memuat editor…
Tunjukkan petunjuk

Anda dapat menempatkan beberapa fungsi agregat dalam SELECT yang sama, dipisahkan dengan koma.

Solusi tersedia setelah 3 upaya