Dulu saya sering mengalami kesulitan untuk membandingkan data yang terdapat pada dua buah table dengan struktur yang sama. Setelah menggunakan beberapa cara yang kurang praktis, saya mendapati cara termudah untuk membandingkan dan mendapatkan selisih datanya.
Ternyata SQL Server punya sebuah T-SQL statement bernama except yang akan mencari selisih data dari dua query. Syntax nya sendiri cukup sederhana, sebagai berikut:
Mari kita lihat contoh berikut, pertama saya membuat sebuah table dengan nama @tab1 dan mengisi datanya.
Kemudian saya membuat table @tab2 dan mengisinya dengan data berbeda.
Kemudian saya gunakan except mencari selisih data antara @tab1 dan @tab2

Query tersebut akan menampilkan data yang terdapat di @tab1 dan tidak terdapat di @tab2
Untuk mencari data yang terdapat di @tab2 dan tidak terdapat di @tab1, tinggal ganti query-nya sebagai berikut
