Perintah #26 · Gabung Tabel (JOIN)

SELF JOIN di SQL

Menggabungkan tabel dengan dirinya sendiri, misalnya untuk mencari atasan setiap karyawan di tabel yang sama.

Sintaks

SELECT a.kolom, b.kolom
FROM tabel AS a
JOIN tabel AS b
  ON a.kolom_relasi = b.kunci;
BagianKeterangan
alias berbedaTabel yang sama dipakai dua kali, jadi wajib diberi dua alias.

Tanda [kurung siku] berarti bagian opsional. Kata kunci SQL tidak membedakan huruf besar-kecil, tapi menulisnya dengan huruf besar membuat query lebih mudah dibaca.

Contoh SELF JOIN

Data contoh: karyawan

Tabel karyawan

idnamadept_idkotagajitgl_masukatasan_id
1 Andi Pratama 3 Bandung 12500000 2019-03-11 NULL
2 Bunga Lestari 1 Jakarta 9800000 2020-07-01 NULL
3 Candra Wijaya 3 Bandung 8200000 2021-02-15 1
4 Dewi Anggraini 2 Jakarta 7500000 2022-05-09 6
5 Eko Saputra 1 Jakarta 6900000 2023-01-16 2
6 Fajar Nugroho 2 Surabaya 11000000 2018-09-03 NULL
7 Gita Permata 3 Jakarta 8200000 2023-08-21 1
8 Hendra Gunawan NULL Medan 5500000 2024-04-02 NULL
query.sql
SELECT k.nama AS karyawan,
       a.nama AS atasan
FROM karyawan AS k
JOIN karyawan AS a
  ON k.atasan_id = a.id;

Hasil 4 baris

karyawanatasan
Candra Wijaya Andi Pratama
Dewi Anggraini Fajar Nugroho
Eko Saputra Bunga Lestari
Gita Permata Andi Pratama

Kolom atasan_id dicocokkan ke id di salinan tabel yang sama.

Belajar SQL bareng mentor

Hafal sintaks itu mudah. Menjawab pertanyaan bisnis, itu skill.

Private Class Python & SQL untuk Data: dari query dasar sampai JOIN dan studi kasus kerja, dengan kurikulum dan jadwal yang menyesuaikan kamu.

Lihat Private Class