SQL Server’da EXCEPT ve INTERSECT Kullanımı

Herkese merhaba,

Bu yazıda SQL Server’da EXCEPT ve INTERSECT kullanımı ile ilgili bilgi vermeye çalışacağım.

SQL Server’da EXCEPT ve INTERSECT ifadeleri çok kullanılan ifadeler değildir ama yerine göre çok kullanılan yapılardır.

EXCEPT KOMUTU: Except komutu iki farklı sql sorgusundan birinin sonuç kümesinde olup diğerinin sonuç kümesinde olmayan kayıtları listeleyen bir komuttur. Örneğin Employees ve Customers adında iki farklı kümeniz olsun. Except komutu Employees kümesinde bulunup Customers‘de bulunmayan kayıtları listeleyip gösterecektir.

SQL Server'da EXCEPT ve INTERSECT Kullanımı

INTERSECT KOMUTU: Intersect komutu ise iki farklı sql sorgusunun kesişim noktasını bulur. Yine küme örneğine dönecek olursak Intersect komutu Employees ve Customers kümelerinin ikisinde de bulunan kayıtları listeleyip gösterecektir.

SQL Server'da EXCEPT ve INTERSECT Kullanımı

Yukarıda teorik tarafını anlattığımıza göre şimdi örnek üzerinden konuyu inceleyelim.

--Tabloların oluşturulması

CREATE TABLE KitapTablosu1
(
    Id INT,
    KitapAdi VARCHAR(50) NOT NULL,
    Kategori VARCHAR(50) NOT NULL,
    Ucret INT NOT NULL
 )
 
CREATE TABLE KitapTablosu2
(
    Id INT,
    KitapAdi VARCHAR(50) NOT NULL,
    Kategori VARCHAR(50) NOT NULL,
    Ucret INT NOT NULL
 )


 --Tablolara veri eklenmesi

 INSERT INTO KitapTablosu1
 
VALUES
(1, 'Kitap1', 'Kategori1', 1800),
(2, 'Kitap2', 'Kategori2', 1500),
(3, 'Kitap3', 'Kategori3', 2000),
(4, 'Kitap4', 'Kategori4', 1300),
(5, 'Kitap5', 'Kategori5', 1500),
(6, 'Kitap6', 'Kategori6', 5000),
(7, 'Kitap7', 'Kategori7', 8000),
(8, 'Kitap8', 'Kategori8', 5000),
(9, 'Kitap9', 'Kategori9', 5400),
(10, 'Kitap10', 'Kategori10', 3200)
 
INSERT INTO KitapTablosu2
 
VALUES
 
(6, 'Kitap6', 'Kategori6', 5000),
(7, 'Kitap7', 'Kategori7', 8000),
(8, 'Kitap8', 'Kategori8', 5000),
(9, 'Kitap9', 'Kategori9', 5400),
(10, 'Kitap10', 'Kategori10', 3200),
(11, 'Kitap11', 'Kategori11', 5000),
(12, 'Kitap12', 'Kategori12', 8000),
(13, 'Kitap13', 'Kategori13', 5000),
(14, 'Kitap14', 'Kategori14', 5400),
(15, 'Kitap15', 'Kategori15', 3200)

--EXCEPT Komutunu inceleyelim

SELECT Id,
       KitapAdi,
       Kategori,
       Ucret FROM KitapTablosu1
EXCEPT
SELECT Id,
       KitapAdi,
       Kategori,
       Ucret FROM KitapTablosu2


--INTERSECT komutunu inceleyelim

SELECT Id,
       KitapAdi,
       Kategori,
       Ucret FROM KitapTablosu1
INTERSECT
SELECT Id,
       KitapAdi,
       Kategori,
       Ucret FROM KitapTablosu2

Except komutunu tablolar üzerinde uyguladığımız zaman aşağıdaki sonucu göreceksiniz.

SQL Server'da EXCEPT ve INTERSECT Kullanımı

Intersect komutunu tablolar üzerinde uyguladığımız zaman aşağıdaki sonucu göreceksiniz.

SQL Server'da EXCEPT ve INTERSECT Kullanımı

Görüldüğü üzere EXCEPT ve INTERSECT komutlarının kullanımı öğrenilmiş olundu.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

2.090 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!