4 set operatöründen biri olan Minus ve özellikleri
Set operatörleri birbirleri ile benzer özellikler gösterirler. Fakat birbirlerini ayırt eden çok keskin noktalar mevcuttur. Minus ile bu farkları anlamaya başlayalım.
Minus operatörünü doğru kullanmak!
Set operatörleri ile genel bilgi için tıklayınız.
Minus, veri kümeleri arasında birinde olup diğerinde olmayan satırları bulur. Diğer set operatörlerinden en önemli farkı, sorguların yazılış sırasının önemli olmasıdır. Üstte yazılan sorgunun sonuçları içinde olup, altta yazılan sorgunun sonuçları içinde olmayan satırları bulur. İki veri kümesinin bir nevi farkını alır. Örneklerle açıklayalım:
Veri kümesi-1 ve sonucu:
select dep_id, dep_ismi
from departman
where dep_id <= 30;
Veri kümesi-2 ve sonucu:
select dep_id, dep_ismi
from departman
where dep_id >= 20;
Yukarıdaki her iki SQL sonucunda dikkatinizi çeken bir şey oldu mu? Evet, 20 ve 30 ID'ye sahip kayıtlar ortak değil mi? Şimdi bu iki SQL'i minus ile birleştirelim:
Union ile birleÅŸtirme sonucu:
select dep_id, dep_ismi
from departman
where dep_id <= 30
minus
select dep_id, dep_ismi
from departman
where dep_id >= 20;
Yukarıda görüldüğü üzere, 1. veri kümesinde olup 2. veri kümesinde olmayan sadece 10 ID'li tek bir satır gelmektedir. Eğer sorgular yer değiştirseydi, bu durumda da sadece 40 ID'li kayıt gelecekti. Minus, genelde test, production gibi farklı ortamlarda ama aynı tablolardaki veri farklılıklarını bulmak için kullanılır. Ya da bir şekilde kopyası oluşturulmuş ve farklı kullanım alanları olan 2 farklı tablonun verilerini karşılaştırmak için de kullanılabilir.