PostgreSQL DELETE ve Delete de Where koşulu,tablonun içerisinde tek veriyi ,birden fazla veriyi ya da hepsini silmek isteyebilirsiniz bunun için iki plpgsql cümleciği kullanılır. Bunlar: DELETE ve TRUNCATE kelimeleridir.
Bu yazımda DELETE kelimesinden bahsedeceğim .
DELETE tablo içerisinde bulunan verilerin hepsini yada belirttiğiniz koşula göre etkilenen kayıtları silmenize yardımcı olur.
Genel kullanımı aşağıdaki gibidir.
DELETE FROM table WHERE istenen_koşul;
***ÖNEMLİ***
Where koşulu eklemeden DELETE cümleciği çalıştırılırsa tabloda bulunan bütün veriler SİLİNİR.
Öğrenci_d1 tablosunda çalışacağımız için tablonun içerisinde ki verilere bakalım.
Ogrenci_d1 tablosunda belirtilen bütün verileri DELETE ile silelim.
DELETE FROM ogrenci_d1;
Adı Faruk olan öğrenciyi silmek istersem napacağım ? Tam burda where koşulu devreye giriyor where koşulu örneğimizi yapalım.
DELETE FROM ogrenci_d1 WHERE adi='Faruk';
Yukarıda görüldüğü gibi Faruk isimli kaydımız gözükmüyor . Silinen verileri görmek için RETURNING komutunu kullanabiliriz bir tane daha veri silelim fakat bunda RETURNING komutunu kullanarak silinen veriyi görelim.
DELETE FROM ogrenci_d1 WHERE adi='Ogün' RETURNING *;

Yukarıda ki resimde görüldüğü gibi verimizi sildik ve silinen verinin çıktısını gördük tablomuza select atarak bakalım .