SQL Subquery ve Nested Query Kullanımı
SQL Subquery ve Nested Query Kullanımı
SQL subquery (alt sorgu) ve nested query (iç içe sorgu) kullanımı, veritabanı uygulamalarında güçlü ve esnek sorgular yazmayı mümkün kılar. Özellikle karmaşık veri ilişkilerini basit ifadelerle elde etmek için subquery ve nested query sıkça tercih edilir. Bu makalede, SQL subquery ve nested query kullanımı nedir, nasıl uygulanır ve hangi durumlarda tercih edilmelidir gibi temel sorulara yanıt verilecektir.
SQL Subquery Nedir?
Subquery, bir SQL sorgusunun içinde başka bir sorgu çalıştırmak anlamına gelir. Genellikle SELECT, INSERT, UPDATE veya DELETE ifadelerinde kullanılabilir. Alt sorgu, ana sorgunun WHERE, HAVING veya FROM gibi kısımlarında yer alır ve sonucunu ana sorguya iletir.
Temel SQL Subquery Kullanımı
Aşağıda, bir tablodan belirli bir kritere uyan satırları dönmek için subquery kullanımına örnek bir SELECT sorgusu verilmiştir:
SELECT isim, maas
FROM calisanlar
WHERE maas > (SELECT AVG(maas) FROM calisanlar);
Bu örnekte, SELECT AVG(maas) FROM calisanlar alt sorgusu, tüm çalışanların ortalama maaşını döndürür. Ana sorgu ise maaşı ortalamanın üzerinde olan çalışanları listeler. Alt sorgu, ana sorgunun WHERE koşulunda kullanıldığı için işlem oldukça esnektir.
Nested Query (İç İçe Sorgu) Kullanımı
Nested query, bazen birden fazla katmanlı subquery barındıran sorgulardır. Yani bir alt sorgunun içinde de başka bir alt sorgu kullanılabilir. Bu yöntem, çok katmanlı veri analizlerinde son derece faydalıdır.
Nested Query ile Çok Katmanlı Sorgular
Örneğin, en düşük maaşlı çalışanın hangi departmanda olduğunu bulmak için nested query kullanılabilir:
SELECT departman
FROM calisanlar
WHERE maas = (
SELECT MIN(maas)
FROM calisanlar
WHERE departman IN (
SELECT departman FROM departmanlar WHERE aktif = 1
)
);
Burada, SELECT departman FROM departmanlar WHERE aktif = 1 sorgusu önce aktif departmanları alır. Sonra bu departmanlarda en düşük maaş bulunur ve en düşük maaşlı çalışanın departmanı sorgulanır. Nested query kullanımı sayesinde adım adım analiz ve bilgiye ulaşmak kolaylaşır.
Sonuç: SQL Subquery ve Nested Query'nin Önemi
SQL subquery ve nested query kullanımı, büyük ve ilişkisel veritabanlarında işlem kolaylığını artırır, kodun okunabilirliğini geliştirir ve tekrar kullanılabilirliği sağlar. Alt sorgular veriye doğrudan ulaşmada, iç içe sorgular ise çoklu dönüşlerde zamandan ve kaynaktan tasarruf ettirir. Etkili ve performanslı SQL yazmak isteyen geliştiriciler, subquery ve nested query yapılarını iyi bilmelidir.

Yorum Gönder