Pernahkan anda mempunyai kasus untuk mencari selisih 2 tabel pada Microsoft SQL Server atau Database lainnya? Maksudnya, anda memiliki 2 buah tabel, tabel satu dan tabel 2. Dimana tabel satu memiliki 10 records, sedangkan tabel 2 hanya memiliki 5 records saja. Nah bagaimana caranya untuk mengetahui record yang selisih tersebut? untuk itu silahkan dicoba cara berikut ini: SELECT * FROM t1 WHERE NOT EXISTS (SELECT * FROM t2 WHERE t2.Id = t1.Id) atau SELECT * FROM t1 LEFT OUTER JOIN t2 ON t1.Id = t2.Id WHERE t2.Id IS NULL Jika primary key anda lebih dari satu, bisa juga pakai ini: SELECT Id, Col1 FROM t1 WHERE NOT EXISTS (SELECT 1 FROM t2 WHERE t1.Id = t2.Id AND Col1.t1 = Col2.t2) Untuk anda pemakai SQL Server 2005 atau lebih, bisa pakai ini: SELECT Id, Col1 FROM t1 EXCEPT SELECT Id, Col1 FROM t2 Untuk mencari record dimana berada pada sumber tetapi tidak pada target tabel atau sebaliknya. SELECT * FROM (SELECT Id, Col1 FROM t1, 'old' UNION ALL SELECT Id, Col1 FROM t2, 'new...
Blog ini saya buat untuk menambah pengetahuan rekan sekalian yang lagi nyari berapa artikel tentang teknologi dari berbagai bidang baik software seperti Windows, Registry, VB - Visual Basic, VFP - Fox Pro, XML, Delphi, Pascal, Office dan Bahasa Pemrograman Lainnya atupun hardware. Mudah-mudahan membantu.