Selamlar herkese, SQL Except ve Intersect Kullanımı yazım ile sql eğitim setime devam ediyorum. SQL konusunda çok fazla yazı gelmiyor çünkü sql tarafında genelde hep aynı şeyler oluyor. Tablo aç, insert yap, update yap, delete yap, select yap şeklinde ilerliyor. Bu sebeple genellikle belirli komutların kullanımı hakkında oluyor. Bu yazıda da bu şekilde olacak. Except ve Intersect kullanımlarını anlatacağım.
SQL Except ve Intersect Kullanımı
Bu komutları sadece birer kere kullandım. Yani sizlerin de çok fazla kullanmaycağınız komutlar olabilir. Aksine çok sık kullanmanız gereken bir proje geliştiriyor da olabilirsiniz. Neyse gelin nasıl kullanıldıklarına bakalım. :)
SQL Except Kullanımı
Except dışında, haricinde anlamına gelir.. Yani A tablosunda olupta B tablosunda olmayan kayıtları listelemek istediğimizde bu komutu kullanabilirsiniz. Bu komutu şöyle bir senaryoda kullanabilirsiniz;
Personeller ve Kullanıcılar adında iki farklı tablonuz olduğunu varsayalım ve her personelin bir kullanıcı kaydı olma gibi bir zorunluluğu olduğunu düşünelim. Aşağıdaki sorgu size kullanıcı kaydı olmayan personellerin listesini verecektir.
NOT: Burada * kullanmamak gerekir. İllaki tüm kolonları karşılaştıracaksanız select içerisindeki kolon sayısının eşit olması gerekmektedir. Farklı kolon sayılarını karşılaştıramazsınız.
SELECT per_adi , per_soyadi from PERSONELLER EXCEPT SELECT kul_adi , kul_soyadi from KULLANICILAR
SQL Intersect Kullanımı
Intersect kesişim anlamına gelir. Yani A ve B tablosunun her ikisinde de olan kayıtları listeler. Yukarıdaki senaryoya uygun şeklinde kullanımına bakalım.
SELECT per_adi , per_soyadi from PERSONELLER INTERSECT SELECT kul_adi , kul_soyadi from KULLANICILAR
Burada da her iki tabloda var olan aynı kayıtları listeler.
Bu komutları çok önceleri kullanmıştım. Bu yüzden yukarıda verdiğim komutları denemedim. Normalde denemeden kod vermiyorum ama bu açık olalım çok basit ve karmaşık olmayan bir konu olduğu için buna çokta gerek duymadım.
SQL Except ve Intersect Kullanımı yazım bu kadardı arkadaşlar. Diğer sql yazılarımızda görüşmek üzere…
Microsoft SQL Server & T-SQL Eğitim Seti ders listesi için tıklayınız. Buradan C# Eğitim Setimde yayınladığım Github projeme ulaşabilirsiniz. Ayrıca bu yazının PDF’ine buraya ve ya buraya tıklayarak ulaşabilirsiniz. Discord’a katılmayı unutmayın.
Bol kodlu günler. :)