Union Operatörü

UNION operatörü, iki veya daha fazla SELECT komutunun sonuç kümesini birleştirmek için kullanılır.

  • UNION içindeki her SELECT komutu aynı sayıda sütuna sahip olmalıdır.
  • Sütunlar aynı zamanda benzer veri türlerine sahip olmalıdır.
  • Her SELECT komutundaki sütunlar aynı sırada olmalıdır.

UNION Syntax

SELECT sütun_adları FROM tablo1
UNION
SELECT sütun_adları FROM tablo2;Code language: SQL (Structured Query Language) (sql)

UNION ALL Syntax

UNION operatörü, varsayılan olarak yalnızca farklı değerleri seçer. Yinelenen değerlere izin vermek için UNION ALL kullanın:

SELECT sütun_adları FROM tablo1
UNION ALL
SELECT sütun_adları FROM tablo2;Code language: SQL (Structured Query Language) (sql)

Not: Sonuç kümesindeki sütun adları genellikle ilk SELECT komutundaki sütun adlarına eşittir.

UNION Örneği

Aşağıdaki SQL kodu, hem “Müşteriler” hem de “Tedarikçiler” tablosundan şehirleri (yalnızca farklı değerler) döndürür:

SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City;Code language: SQL (Structured Query Language) (sql)
Union Operatörü

Not: Bazı müşteriler veya tedarikçiler aynı şehre sahipse, UNION yalnızca farklı değerler seçtiği için her şehir yalnızca bir kez listelenir. Yinelenen değerleri seçmek için UNION ALL’u kullanın!

UNION ALL Örneği

Aşağıdaki SQL kodu, hem “Müşteriler” hem de “Tedarikçiler” tablosundan şehirleri (yinelenen değerler dahil) döndürür:

SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;Code language: SQL (Structured Query Language) (sql)
Union Operatörü

UNION ve WHERE birlikte kullanımı

Aşağıdaki SQL kodu, hem “Müşteriler” hem de “Tedarikçiler” tablosundan Almanya şehirlerini (yalnızca farklı değerler) döndürür:

SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;Code language: SQL (Structured Query Language) (sql)
Union Operatörü

UNION ALL ve WHERE birlikte kullanımı

Aşağıdaki SQL kodu, hem “Müşteriler” hem de “Tedarikçiler” tablosundan Almanya şehirlerini (yinelenen değerler dahil) döndürür:

SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;Code language: SQL (Structured Query Language) (sql)
Union Operatörü

Başka bir örnek:

Aşağıdaki SQL kodu, tüm müşterileri ve tedarikçileri listeler:

SELECT 'Customer' AS Type, ContactName, City, Country
FROM Customers
UNION
SELECT 'Supplier', ContactName, City, Country
FROM Suppliers
ORDER BY ContactName;Code language: SQL (Structured Query Language) (sql)
Union Operatörü

Yukarıdaki “AS” ifadesine dikkat edin; bu bir takma addır. SQL Takma Adları, bir tabloya veya sütuna geçici bir ad vermek için kullanılır. Takma ad, yalnızca sorgu süresince mevcuttur. Bu nedenle, burada, ilgili kişinin “Müşteri” mi yoksa “Tedarikçi” mi olduğunu listeleyen “Tür” adlı geçici bir sütun oluşturduk.


Yayımlandı

kategorisi

yazarı:

Etiketler: