UNION ve UNION ALL Fonksiyonları
  1. Anasayfa
  2. Genel

UNION ve UNION ALL Fonksiyonları

0

NION deyimi iki veya daha fazla sorgunun sonuçlarını birleştirmek için kullanırız. Bu iki veya dahaz fazla sorgu sonucu oluşan değerler tek bir tablo üzerinde geriye döndürülür. Syntax yani söz dimizi aşağıdaki gibidir :

SELECT listelenecek tablo kolonları FROM tablo1 UNION SELECT listelenecek kolonlar FROM tablo2

veya UNION ALL ile;

SELECT listelenecek tablo kolonları FROM tablo1 UNION ALL SELECT listelenecek kolonlar FROM tablo2

Aşağıdaki şekilde UNION kullanımı sonucu nasıl bir sorgu sonucu alabiliriz resmetmeye çalıştım. UNION kullanırken dikkat edilecek nokta listelenecek kolonların aynı türde, birbiri ile uygun türde veri tiplerine sahip olmasıdır.

2013022701

Şimdi bu resmettiğimiz durumu sorguya dökelim.

123SELECT BusinessEntityID AS ID FROM HumanResources.Employee UNION SELECT BusinessEntityID FROM Person.PersonUNION SELECT SalesOrderID FROM Sales.SalesOrderHeader ORDER BY ID

Sorgumda HumanResources.Employee tablosundan BusinessEntityID, Person.Person tablosundan BusinessEntityID ve Sales.SalesOrderHeader tablosundan SalesOrderID kolonlarındaki verileri listeledim.

Sonuç :

2013022702

51437 satır sonuç geriye döndü. Şimdi detay açıklamaya girmeden birde aşağıdaki sorguyu yazalım ve sonucu görelim.

123SELECT BusinessEntityID AS ID FROM HumanResources.Employee UNION ALL SELECT BusinessEntityID FROM Person.PersonUNION ALL SELECT SalesOrderID FROM Sales.SalesOrderHeader ORDER BY ID

Bu sefer UNION’dan sonra ALL ekledik. Sonucu görelim :

2013022703

Sonuç olarak 51727 satır veri var.

Şimdi ilk sorgumda birbiri ile aynı değere sahip veriler listelenmiyor. İkinci sorgumda ise ALL dediğimiz için veriler tekrar etse dahi listeleniyor. Resimlerde de durumları görebiliriz, zaten geriye dönen satır değerleri de farklı.

UNION deyimi tamamen iki benzer tablonun ilgili kolonlarını birleştirmek için kullanılır. Örneğin bir veritabanı ilgili şirketin her bölümü için ayrı ayrı müşteri bilgilerini farklı tablolarda tutuyor olsun. Biz UNION kullanarak buy farklı tablolarda yer alan müşteri bilgilerini tek bir tabloda birleştirerek sorgumuz sonucu geriye döndürebiliriz. Dikkat edeceğimiz konu üstte de yer verdiğim gibi UNION kullanırken birbiri ile birleşecek tabloların kolonlarının aynı tipte ya da uygun tipte veri türüne sahip olmaları gerektiğidir.

  • 0
    bayildim
    BAYILDIM
  • 0
    tebrikler
    TEBRIKLER
  • 0
    guzel
    GUZEL
  • 0
    acaba
    ACABA
  • 0
    igrenc
    IGRENC
  • 0
    kizdim
    KIZDIM

Baristekin.com.tr içerik yöneticisi

Yazarın Profili

Bültenimize Katılın

Hemen ücretsiz üye olun ve yeni güncellemelerden haberdar olan ilk kişi olun.

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir