POSTGRESQL NOT EXISTS Kullanımı

PostgreSQL EXITS yazımı okumadıysanız okumanızı tavsiye ederim bu yazacağım yazı onun devamı niteliğindedir.

PostgreSQL NOT EXITS  kullanımı EXITS’in tam tersidir yani eşit ve eşit değildir sembollerinin kullanımı gibi düşünebilirsiniz.

Ogrenci_all ve ogrenci_vf tabloları ile işlem yapacağız bu tabloları görelim ve örneğimize başlayalım.

Ogrenci isimlerinin bulunduğu Ogrenci_all tablosu :

Öğrenci vize ve final notlarının girildiği Ogrenci_vf tablosu:

Yukarıda iki tablomuzu da gördük ve şimdi vize ve final notu girilmemiş öğrencileri listeleyelim.

SELECT*FROM ogrenci_all WHERE NOT EXISTS (SELECT*FROM ogrenci_vf  WHERE ogrenci_all.no = ogrenci_vf.no);

Yukarıda ki tablolara ait resimlerin sol alt köşesinde ki ROWS sayılarına dikkat ettiğinizde  ROWS sayıları farklıdır bunu   kayıt sayıları az olan tablolarda no kolonunda ki kolondaki değerleri manuel şeklinde göz ile bakarak fark edebilirsiniz fakat  tablolarınızda ki kayıt sayısı binleri, milyonları buluyorsa  bunun için not exists ‘i kullanmanızı tavsiye ederim.

Aşağıdaki örnek de  vize ve final notu girilmemiş öğrenci listelenmektedir.

 

SELECT*FROM ogrenci_all WHERE NOT EXISTS (SELECT*FROM ogrenci_vf  WHERE ogrenci_all.no = ogrenci_vf.no);

 

Loading