Dalam sistem manajemen basis data relasional (RDBMS), operasi himpunan (set operations) merupakan alat yang sangat krusial untuk menggabungkan hasil dari dua atau lebih pernyataan SELECT. Dua perintah yang paling sering digunakan untuk membandingkan isi dari dua tabel adalah INTERSECT dan EXCEPT.
Operasi himpunan bekerja berdasarkan teori matematika himpunan. Agar perintah ini dapat dijalankan, dua pernyataan SELECT harus memenuhi syarat dasar:
Perintah INTERSECT digunakan untuk mengembalikan baris yang unik yang ada di dalam kedua pernyataan SELECT. Secara sederhana, perintah ini hanya akan menampilkan data yang "tumpang tindih" atau ada di kedua tabel.
SELECT kolom FROM tabel1 INTERSECT SELECT kolom FROM tabel2;
Bayangkan Anda memiliki tabel 'Mahasiswa_Lama' dan 'Mahasiswa_Baru'. Jika Anda ingin mengetahui siapa saja mahasiswa yang terdaftar di kedua periode tersebut, INTERSECT adalah solusi yang paling efisien.
Perintah EXCEPT (atau MINUS pada beberapa sistem seperti Oracle) digunakan untuk mengembalikan baris unik dari pernyataan SELECT pertama yang tidak ada di pernyataan SELECT kedua. Perintah ini sering digunakan untuk mencari selisih data.
SELECT kolom FROM tabel1 EXCEPT SELECT kolom FROM tabel2;
Menggunakan contoh yang sama, jika Anda ingin mengetahui mahasiswa yang terdaftar di 'Mahasiswa_Lama' tetapi tidak terdaftar di 'Mahasiswa_Baru', maka Anda menggunakan EXCEPT.
Perbedaan mendasar antara keduanya terletak pada hasil akhir yang diinginkan:
Dalam manajemen basis data tingkat lanjut, perintah ini sangat berguna untuk:
Penting untuk diingat bahwa kinerja dari operasi himpunan ini bergantung pada ukuran tabel. Pada tabel dengan jutaan baris, pastikan kolom yang dibandingkan telah diindeks dengan baik untuk mendapatkan hasil yang optimal dan cepat.
