SQL Server – ANY ile İç İçe Sorgu Örnekleri

İç sorgudan dış sorguya bir veya daha fazla kayıt gönderilebilir. Bu yüzden kullanılan parametreleri tek kayıt döndüren alt sorgular ve çok kayıt döndüren alt sorgular olmak üzere 2 gruba ayrılır.

ANY deyimi iç sorgudan çok kayıt gelen durumlarda kullanılır. İç sorgudan elde edilen sonuçlardan en az biri için çalışır. ANY ifadesi =, >=, <=, >, <,  operatörleri ile birlikte kullanılmalıdır. ANY ifadesi kullanıldığı operatöre herhangi biri anlamı katar. İç içe sorguların genel kullanımları İÇ İÇE SORGULAR (IN – ANY – ALL ) başlıklı yazıda ayrıntılı olarak anlatılmıştır.

İç içe sorgular personel, birim, unvan, proje, çocuk gibi tabloları içeren bir şirket veritabanı üzerinde örneklenecektir. Şirket veritabanı örneği  başlıklı yazıdan ulaşabilirsiniz.

4 numaralı bölümde çalışan herhangi bir personelden daha fazla maaş alan personellerin bilgilerini listeleyin.
NOT: 15 ve 18 numaralı personeller sorgu kriterine uyduğu için listelenmeyecektir.

veya en düşük maaş alan kişiden yüksek olması, herhangi birinden yüksek olması ile aynı anlama gelmektedir.

Bununla birlikte HERHANGİ BİRİNDEN KÜÇÜK maaş alanların sorgusunu yaparken yalnızca işaret değişir ve sorgu şu şekilde olur:

Bu sorgunun MAX() fonksiyonu ile yapmak istersek sorguyu şu şekilde değiştirmek zorunda kalırız:

Özet

ANY ifadesinin MIN() ve MAX() fonksiyonları ile kullanımında aşağıdaki formül işinize yarayacaktır:

  • İlgili alan herhangi birinden büyük ise;
    • … alan > ANY (SELECT alan …)
    • … alan > (SELECT MIN(alan) …)
  • İlgili alan herhangi birinden küçük ise;
    • … alan < ANY (SELECT alan …)
    • … alan < (SELECT MAX(alan) …)

 

 

 

About Seçil ŞEKERCİ HÜSEM

2010 yılından bu yana Bilişim Teknolojileri Öğretmeni olarak meslek liselerinde görev yapmaktayım.

View all posts by Seçil ŞEKERCİ HÜSEM →

Bir cevap yazın

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.