COMPUTER ENGINEER

Örneklere git
Blog
SQL Server / T-SQL6 dk çalışma
23/ 65

İlişkiler ve JOIN

UNION, INTERSECT ve EXCEPT

Satırları yan yana değil, küme olarak birleştir.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

UNION iki sonucun satırlarını birleştirip tekrarları kaldırır; UNION ALL tekrarları korur ve tekilleştirme maliyeti eklemez. İki SELECT aynı sayıda ve uyumlu tipte sütun üretmelidir. Sonuç sütun adları ilk SELECT’ten alınır.

INTERSECT ortak satırları, EXCEPT solda olup sağda olmayan satırları döndürür; bunlar DISTINCT küme davranışı gösterir. SQL Server bu operatörlerin tekilleştirmesinde NULL değerleri eşit kabul eder. UNION, ilişki kuran JOIN’in alternatifi değildir. Genel sıralama birleşik sorgunun sonunda yer alır.

NERESİNDE KULLANIRSIN?

Kaynak listelerini birleştirme ve iki veri kümesini karşılaştırma için.

SIK YAPILAN HATA

UNION ALL ile UNION’ı sonuç tekrarları açısından aynı sanmak.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

T-SQL / SQL Server 2019+
SELECT City FROM lab.Customer WHERE CustomerId <= 3
UNION SELECT City FROM lab.Customer WHERE CustomerId > 3;

Şehirleri birleşik, tekil küme olarak verir.

Bu sayfa SQL çalıştırmaz. Örnekleri indirilebilir SqlStudioLab veritabanında, SSMS’de uygula. Geçici tablo örneklerini yeniden çalıştırırken yalnız ilgili #tabloyu temizle. VIEW, procedure ve function örnekleri lab’da kalıcı nesne oluşturur; üretim bağlantısı kullanma.

02 / SIRA SENDE

Önce kendin dene.

Tüm müşteri şehirlerini tekrarlar korunarak iki gruptan birleştir.

Çözümü ve açıklamasını göster
Açıklamalı çözüm
SELECT City FROM lab.Customer WHERE CustomerId <= 3 UNION ALL SELECT City FROM lab.Customer WHERE CustomerId > 3;

6 satır döner; UNION kullansaydın 4 şehir dönerdi.