MYSQL

MySQL Where Kullanımı

Bu eğiticide, sonuç kümesindeki satırları filtrelemek için SELECT deyimindeki MySQL WHERE yan tümcesini nasıl kullanacağınızı öğreneceksiniz.

MySQL WHERE sorgusu

WHERE yan tümcesi, bir sorgu tarafından döndürülen satırlar için bir arama koşulu belirtmenize olanak tanır. Aşağıda, WHERE yan tümcesinin söz dizimi gösterilmektedir:

arama_koşulu VE, VEYA ve NOT mantıksal operatörünü kullanan bir veya daha fazla ifadenin birleşimidir.

MySQL’de BOOLEAN DOĞRU, YANLIŞ veya BİLİNMEYEN olarak değerlendirilen bir ifadedir.

SELECT ifadesi, sonuç kümesindeki arama_koşulunu sağlayan herhangi bir satırı içerecektir.

SELECT ifadesinin yanı sıra, hangi satırların güncelleneceğini veya silineceğini belirtmek için UPDATE veya DELETE ifadesindeki WHERE yan tümcesini kullanabilirsiniz.

Bir WHERE yan tümcesi ile bir SELECT ifadesi yürütürken, MySQL, FROM yan tümcesinden sonra ve SELECT ve ORDER BY yan tümcelerinden önce WHERE yan tümcesini değerlendirir:

MySQL WHERE Örnekleri

Örneklerimizi sample database veritabanında bulunan employee tablosunu kullanarak gerçekleştireceğiz.

1) MySQL WHERE yan tümcesini eşitlik operatörü ile kullanma

Aşağıdaki sorgu, iş unvanları (jobTitle) Satış Temsilcisi (Sales Rep) olan tüm çalışanları bulmak için WHERE yan tümcesini kullanır:

Ekran Çıktısı:

Bu örnekte, SELECT ifadesi çalışanlar tablosunun tüm satırlarını inceler ve yalnızca jobTitle sütunundaki değerleri Sales Rep olan satırları seçer.

2) AND operatörüyle MySQL WHERE yan tümcesini kullanma

Aşağıdaki örnek, iş unvanları (“jobTitle“) Satış Temsilcisi (“Sales Rep“) ve “officeCode”alanı “1″ olan çalışanları bulmak için WHERE yan tümcesini kullanır:

Ekran Çıktısı:

Bu örnekte, WHERE yan tümcesindeki ifade, iki koşulu birleştirmek için AND operatörünü kullanır:

2) OR operatörüyle MySQL WHERE yan tümcesini kullanma

Aşağıdaki örnek, iş unvanları (“jobTitle“) Satış Temsilcisi (“Sales Rep“) veya “officeCode”alanı “1″ olan çalışanları bulmak için WHERE yan tümcesini kullanır:

Ekran Çıktısı:

OR (veya) operatörü, ifadelerden biri TRUE (Doğru) olarak değerlendirilirse TRUE olarak değerlendirilmektedir. Yani şartlardan birinin DOĞRU olması yeterli olacaktır.

jobtitle = ‘Sales Rep’ OR officeCode = 1

Bu nedenle sorgu, Satış Temsilcisi iş unvanına sahip olan veya ofis kodu 1’e sahip olan tüm çalışanları döndürür.

4) BETWEEN operatör örneği ile MySQL WHERE yan tümcesini kullanma

BETWEEN operatörü belirlenen değer aralığında ise TRUE değerini döndürür:

Aşağıdaki sorgu, ofis kodu 1’den 3’e kadar olan ofislerde bulunan çalışanları bulur:

5) LIKE operatör örneği ile MySQL WHERE yan tümcesini kullanma

Bir değer belirtilen bir kalıpla eşleşirse, LIKE işleci TRUE olarak değerlendirilir.

Bir kalıp oluşturmak için%ve_joker karakterlerini kullanırsınız. %joker karakteri, sıfır veya daha fazla karakterden oluşan herhangi bir dizeyle eşleşirken_joker karakteri herhangi bir tek karakterle eşleşir.

Aşağıdaki sorgu, soyadları ‘son’ dizesiyle biten çalışanları bulur:

Ekran Çıktısı:

6) IN operatörü örneği ile MySQL WHERE yan tümcesini kullanma

Bir değer, listedeki herhangi bir değerle eşleşirse, IN operatörü TRUE değerini döndürür.

value IN (value1, value2,…)

Aşağıdaki örnek, ofis kodu 1,2,3 olan çalışanları bulmak için IN operatörüyle WHERE yan tümcesini kullanır.

Ekran Çıktısı:

7) MySQL WHERE yan tümcesini IS NULL operatörüyle kullanma

Bir değerin NULL olup olmadığını kontrol etmek için eşittir operatörünü (=) değil IS NULL operatörünü kullanırsınız. IS NULL operatörü, bir değer BOŞ ise TRUE değerini döndürür.

Not: Veritabanı ve programlamada NULL, bir değerin eksik veya bilinmeyen olduğunu gösteren bir işaretçidir. Ve NULL, 0 sayısına veya boş bir dizeye eşdeğer değildir.

Aşağıdaki ifade, ReportTo sütunundaki değerlerin NULL olduğu satırları almak için IS NULL operatörüyle WHERE yan tümcesini kullanır:

8) MySQL WHERE yan tümcesini karşılaştırma operatörleriyle kullanma

Aşağıdaki tablo, WHERE yan tümcesindeki ifadeyi oluşturmak için kullanabileceğiniz karşılaştırma operatörlerini gösterir.

OperatorAçıklama
=Eşittir. Hemen hemen her veri türüyle kullanabilirsiniz.
<> or !=Eşit Değil.
<Küçüktür. Genellikle sayısal ve tarih/saat veri türleri ile kullanırsınız.
>Büyüktür.
<=Küçük veya eşittir
>=Büyük veya eşittir

Aşağıdaki sorgu, Satış Temsilcisi olmayan tüm çalışanları bulmak için eşit değildir ( <>) operatörünü kullanır:

Aşağıdaki sorgu, ofis kodu 5’ten büyük olan çalışanları bulur:

Aşağıdaki sorgu, ofis kodu 4’e eşit veya daha küçük olan çalışanları döndürür( <=4):

Yorum yap