Hari 19: SELF JOIN — Tabel Join Dirinya Sendiri
50 min
Last updated 25 Mar 2026
SELF JOIN
SELF JOIN adalah JOIN tabel dengan dirinya sendiri. Biasanya dipakai untuk data hierarki seperti pegawai-atasan, kategori-subkategori, dll.
-- Tabel karyawan memiliki kolom manager_id yang merujuk ke id di tabel yang sama
-- Tampilkan karyawan beserta nama manajernya
SELECT
k.nama AS karyawan,
k.jabatan,
m.nama AS nama_manajer
FROM karyawan k
LEFT JOIN karyawan m ON k.manager_id = m.id
ORDER BY k.manager_id NULLS FIRST, k.nama;
Mengapa LEFT JOIN, Bukan INNER JOIN?
CEO tidak punya manajer (manager_id = NULL). Kalau pakai INNER JOIN, CEO tidak akan muncul. LEFT JOIN memastikan semua karyawan tampil meskipun manager_id-nya NULL.
💡
Notice: Beri alias berbeda untuk dua referensi tabel yang sama (k = karyawan, m = manajer).
Assignment
Tampilkan setiap karyawan dengan informasi: nama karyawan, jabatan, departemen, gaji, dan nama_manajer (jika tidak ada manajer tampilkan "—"). Urutkan dari gaji tertinggi.
Expected output:
12 row(s) returned
SQL
query.sql
Solution
Output
⏳ Loading DB...