Merhaba arkadaşlar bu yazımda sizlere MySQL WHERE cümlesinden bahsedeceğim. WHERE cümlesini son bir kaç yazımda bahsetmiştim artık tam anlamıyla ne işe yaradığından bahsetme zamanı gelmiş oldu.

WHERE cümlesi aslında tablo için de bir veri ararken bize belirtli bir kriter üzerinde arama yapmamızı sağlar yani aslında bizim verilerimizi filtreleyerek bize daha doğru bir sonuç çıkartmayı amaçlar.

Bunu SELECT, UPDATE ve DELETE işlemlerinin hepsinde kullanabiliriz. Şimdi WHERE cümlesini bu üç işlem içinde birer örnek ile göstererek mantıkını anlayalım. Bu örneklerde kullanacağım tablonun içeriği şu şekildedir.

SELECT İşlemi ile WHERE Cümlesi

SELECT işlemi bildiğiniz üzere verileri seçmek için kullanılıyor. Tüm verileri listelemek kolay ama ben sadece 1 satırdaki verileri listelemek istiyorsam ne yapabilirim diye sorarsanız WHERE cümlesini kullanırsınız.

Örnek olarak ben id değeri 4 olan satırdaki verileri listelemek istiyorsam şöyle bir sorgum olmalı

SELECT * FROM users WHERE id = 4;

şeklindeki sorgumu çalıştırmam gerekiyor bu sorguyu çalıştırdıktan sonra şu görüntü ile karşılaşıyorum.

Bu işlemi sadece id değerine göre yapmak zorunda değilsiniz. Aynı şekilde username, user_pass, mail sütunları içinde bu işlemler yapılabilir ama sadece 1 sütundaki değerleri istiyorsanız PRIMARY KEY olan sütuna göre bir filtreleme yapmak daha doğru olacaktır.

UPDATE İşlemi ile WHERE Cümlesi

UPDATE işlemi önceki yazımdada bahsettiğim gibi bir ve ya birden fazla sütundaki verileri değiştirmek için kullandığımız yöntemdir ve bu işlemler de bir ve ya birden fazla sütuna müdahale edeceksek bile hine de filtreleme yapmamız gerekebilir. İşte bu filtreleme için de WHERE kullanmamız gerekir.

Örnek olarak username sütunu Test1 değerine eşit olan satırdaki mail değerini değiştirmek istiyorum. O zaman şöyle bir sorgu kullanmamız gerekecektir.

UPDATE users SET mail = 'test@test.com' WHERE username = 'Test1';

şeklinde ki sorgumuzu çalıştırdıktan sonra username değeri Test1 olan satırın mail sütunundaki değerini test@test.com değerine eşit olacak şekilde değiştirdi. Yani tablomuzun son görüntüsü şu şekilde oldu

DELETE İşlemi ile WHERE Cümlesi

DELETE işlemi bir önceki yazımda da bahsettiğim gibi tablodan veri silmek için kullandığımız bir yöntem.

Direkt olarak

DELETE FROM users;

şeklinde bir sorgu kullanırsak users tablosunda ki tüm verileri silmiş oluruz. Bir filtreleme yapmamız gerekiyor. Biz de bu örneğimiz de mail değerleri test@test.com değerine eşit olan satır / satırları silelim. Hatırlarsanız en son güncelleme işleminden sonra bu duruma sahip 2 adet satırımız olmuştu. Şimdi sorgumuzu yazalım

DELETE FROM users WHERE mail = 'test@test.com';

Bu işlemi yaptıktan sonra tablonun son hali ise şu şekilde olacaktır.

Gördüğünüz gibi id değeri 1 ve 2 olan satırlar silinmiş oldu. Çünkü bu satırların mail sütunundaki değerleri test@test.com değerine eşitti.

Özet,

Bu yazımda sizlere WHERE cümlesinin SELECT, UPDATE ve DELETE işlemleri ile birlikte nasıl kullanıldığından bahsettim. WHERE cümlesi ile bir ve ya birden fazla satıra üzerinde nasıl işlem yapılacağından bahsettim.

Bir sonraki yazım da sizlere ORDER BY cümlesinden bahsedeceğim. O zamana kadar MySQL hakkında yazdığım diğer yazıları okumak isterseniz buraya tıklayabilirsiniz.