top of page

SET Operatörü - UNION

  • Yazarın fotoğrafı: Tuncay Tiryaki
    Tuncay Tiryaki
  • 1 May 2020
  • 1 dakikada okunur

Güncelleme tarihi: 19 May 2020

4 set operatöründen biri olan Union ve özellikleri


Set operatörleri birbirleri ile benzer özellikler gösterirler. Fakat birbirlerini ayırt eden çok keskin noktalar mevcuttur. Union ile bu farkları anlamaya başlayalım.


Union operatörünü doğru kullanmak!

Set operatörleri ile genel bilgi için tıklayınız.


Union, veri kümelerini birleştirir. Bu birleştirme işleminde eğer veri kümeleri arasında ortak satırlar varsa, bunları yani kesişim kümesini sadece 1 kez alır. Bunu bir örnekle 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 union ile birleştirelim:



Union ile birleştirme sonucu:

select dep_id, dep_ismi
from departman
where dep_id >= 20
union
select dep_id, dep_ismi
from departman
where dep_id <= 30;


Yukarıda görüldüğü üzere kesişim kümesi olan 20 ve 30 ID'ye sahip satırlar sadece bir kez getirildi. Bu durum, union operatörünün en önemli özelliğidir.


Kesişim kümesini bulup birer kez getirmek elbette Oracle için bir maliyet, bu da performans kaybı demektir. SQL'lerinizi yazarken buna dikkat etmelisiniz. Eğer kesişim kümesinin tekrarlaması sizin açınızdan sorun oluşturmuyorsa, ya da kesişim kümesi olmayacak şekilde SQL'leri yazabilmiş iseniz, bu durumda Union ALL operatörünü kullanmanızı öneririm.

Comments


logo-new.png
  • udemy-black
  • Siyah Instagram Simge
  • Siyah LinkedIn Simge
  • Siyah Facebook Simge

© 2020 dbHunter

bottom of page