SQL: Cara Menggabungkan Tabel dengan UNION

SQL: Cara Menggabungkan Tabel dengan UNION

2026-01-05

Dalam pengolahan data, sering muncul kebutuhan untuk menggabungkan data dari beberapa tabel yang memiliki struktur serupa. Di SQL, salah satu cara paling umum untuk melakukan hal ini adalah dengan menggunakan UNION. Perintah ini sangat berguna dalam analisis data, laporan, hingga pengolahan data lintas sumber tanpa perlu relasi antar tabel.

Artikel ini akan membahas konsep UNION di SQL, syarat penggunaannya, serta contoh praktik menggunakan studi kasus sederhana di database nusacodes.


Apa Itu UNION di SQL

UNION adalah perintah SQL yang digunakan untuk menggabungkan hasil dari dua atau lebih query SELECT. Data yang digabungkan bersifat vertikal, artinya baris dari query pertama akan ditambahkan ke baris query berikutnya.

Berbeda dengan JOIN yang menggabungkan tabel berdasarkan relasi kolom, UNION hanya menggabungkan hasil query tanpa melihat hubungan antar tabel.

Secara default, UNION hanya menampilkan data unik. Jika terdapat data yang sama di beberapa query, maka data tersebut hanya akan muncul satu kali di hasil akhir.


Perbedaan UNION dan UNION ALL

UNION memiliki dua variasi utama, yaitu UNION dan UNION ALL.

UNION:

  • Menggabungkan hasil SELECT
  • Menghapus data duplikat secara otomatis

UNION ALL:

  • Menggabungkan hasil SELECT
  • Tetap menampilkan semua data termasuk duplikat
  • Lebih cepat karena tidak melakukan proses penghapusan duplikat

Pemilihan antara UNION dan UNION ALL tergantung pada kebutuhan data dan performa.


Syarat Menggunakan UNION

Agar UNION dapat dijalankan tanpa error, terdapat beberapa syarat penting yang harus dipenuhi:

  • Jumlah kolom pada setiap SELECT harus sama
  • Urutan kolom harus konsisten
  • Tipe data pada kolom yang digabung harus sejenis atau kompatibel

Jika salah satu syarat ini tidak terpenuhi, query UNION akan menghasilkan error.


Contoh Tabel di Database nusacodes

Sebagai contoh, terdapat dua tabel pelatihan di database nusacodes yang menyimpan data peserta dari kelas berbeda.

Tabel peserta_sql:


Tabel peserta_python:


Kedua tabel memiliki struktur yang sama dan cocok untuk digabung menggunakan UNION.


Contoh Query UNION

Berikut contoh query UNION untuk menggabungkan nama peserta dari kedua tabel:

SELECT nama FROM peserta_sql
UNION
SELECT nama FROM peserta_python;

Hasil query:


Nama Budi hanya muncul satu kali karena UNION secara otomatis menghapus data duplikat.


Contoh Query UNION ALL

Jika ingin menampilkan seluruh data termasuk yang duplikat, gunakan UNION ALL:

SELECT namaFROM peserta_sql
UNION ALL
SELECT nama FROM peserta_python;

Hasil query:


Pada hasil ini, nama Budi muncul dua kali karena terdapat di kedua tabel.


Kapan Menggunakan UNION

UNION sangat cocok digunakan pada kondisi berikut:

  • Menggabungkan data dari tabel dengan struktur serupa
  • Mengambil data dari beberapa periode atau sumber berbeda
  • Membuat laporan gabungan tanpa relasi foreign key
  • Analisis data lintas kelas, divisi, atau kategori

Dalam praktik profesional, UNION sering dipakai oleh Data Analyst, Backend Developer, dan Data Engineer untuk menyusun dataset final sebelum diproses lebih lanjut.


UNION adalah fitur penting dalam SQL untuk menggabungkan hasil query secara vertikal. Dengan memahami perbedaan UNION dan UNION ALL serta syarat penggunaannya, proses pengolahan data menjadi lebih fleksibel dan efisien.

Bagi yang ingin memperdalam SQL secara praktis dan terarah, pemahaman UNION menjadi salah satu materi dasar yang wajib dikuasai sebelum masuk ke query yang lebih kompleks.