PostgreSQL SUBQUERY(iç içe sorgular)

PostgreSQL SUBQUERY(iç içe sorgular), bu yazımızda kullandığımız sorguları biraz daha karmaşık hale getireceğiz .PostgreSQL Select cümlesinin içine  farklı bir SELECT cümlesini yazarak bunları birleştirebilir ve bunlardan tek bir sonuç alabiliriz. Bunun için birkaç yöntem vardır, bunları diğer yazılarımda anlatacağım fakat bu konuda içe içe sorgu yani SUBQUERY’den bahsedeceğim.

SUBQUERY yazabilmemiz için  bazı koşullara dikkat etmemiz gerekiyor. Bunlardan bazıları aşağıdaki gibidir.

  •  SUBQUERY’ler  ilk query den sonra yazılır.
  • SUBQUERY parantez içerisinde yazılmalıdır.
  • SUBQUERY den gelen kayıt sayısına uygun operatörler kullanılmalıdır.

Örnek olarak  öğrenci tablomuzdaki vize notlarının ortalaması alınsın ve ortalamadan yüksek olanları listeleyelim.

İlk olarak öğrenci tablosundan sorgu çekelim ve verileri görelim.

Verilerimizi gördük şimdi de Bilgisayar Mühendisliği dersine giren ve vizesi sınıf ortalamasının üstünde olan kişileri görüntüleyelim.

Aşağıdaki soldan  ikinci select cümlesinde vizedeki notların ortalaması 53.444 . Bu rakamdan yüksek değerleri görmek için ise büyüktür işaretini kullanmamız yeterli oluyor.

select adi,soyadi,vize from ogrenci_sb where vize >(select avg(vize) from ogrenci_sb);

Yukarıdaki örneği yapmak için istediğimiz kolonları yazıyoruz. Ben  adi, soyadi ve vize notlarını görmek için vize kolonunu aldım bundan sonra ise WHERE cümlesinden sonra bu  vizenin ortalamasını alacağım için  parantez açarak SELECT cümlesinde vizelerin ortalamasını aldım .

 

Aritmetik operatörler ile  yukarıdaki işlemleri yaptık fakat bunların haricin de aşağıda madde halinde belirtilen PLPGSQL cümleleri vardır.

  • ALL
  • ANY
  • IN
  • EXISTS
  • NOT EXISTS

Yukarıdaki maddeler  ile ilgili örnekleri diğer yazılarımda sizinle paylaşacağım.

 

Loading