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);