İçeriğe geç
← Ana sayfa

Öğren · Dene · Üret

SQL · Koşullu filtreleme: WHERE — videolu atölye

Adım adım Türkçe görsel rehber. Her bölümden sonra duraklat ve kendi ortamında dene.

← Bütün video rehberler

4:35 dk · Sessiz görsel anlatım · Duraklatıp kodu veya adımı kendin dene.

Ayrıntılı yazılı rehberi aç →Resmi kaynak ↗

Bölümler

Videoyu metin olarak oku

Koşullu filtreleme: WHERE

Tablodaki binlerce satır arasından yalnızca belirli koşullara uyan verileri WHERE ile filtrelemek.

Kavramı kur

Veritabanında her zaman tablonun tamamına ihtiyaç duymayız. Belirli bir kullanıcının bilgilerini getirmek, stokta tükenen ürünleri bulmak veya belirli bir tarihten sonraki kayıtları listelemek için WHERE filtresi kullanılır.

Neden böyle çalışıyor?

WHERE ifadesi FROM satırından sonra yazılır. Koşulda büyüktür (>), küçüktür (<), eşit (=) veya eşit değil (!=) gibi karşılaştırma işleçleri kullanılır. Birden çok koşulu AND (ve) veya OR (veya) ile bağlayabilirsin.

Çalışma sırası

Metinsel ve tarihsel değerler SQL'de tek tırnak içine ('...') yazılır. Sayısal değerlerde ise tırnak kullanılmaz. Tırnak işaretini unutmak SQL motorunun metni bir sütun adı sanmasına yol açar.

İkinci örnek · 1

SELECT ad, maas seçilecek sütunları listeler. Kodun tamamı yazılı derste bulunur.

SELECT ad, maas
FROM calisanlar
WHERE maas > 50000;

Beklenen sonucu oku

Sonuç kümesine yalnızca şartı sağlayan satırlar eklenir.

Beklenen: ad | maas Ahmet | 65000 Ayşe | 52000

Bir değeri sen değiştir

Maaşı 60000'den büyük çalışanları filtrele. Bölümü yalnızca 'Yazılım' olanları getiren bir metin filtresi yaz.

Hata nereden gelir?

Metin değerlerini tırnaksız yazmak hataya sebep olur; tek tırnak kullan.

Kendi çözümünü kur

AND işleci kullanarak hem Yazılım bölümünde olan hem de maaşı 50000 üzerinde olanları seç. Metin filtresinde tek tırnak kullan: WHERE bolum = 'Yazılım'. İki koşulu AND ile birleştir.

Çözüm varyasyonu · 1

Önce kendi denemeni yap; sonra bu varyasyonun girdileri ile sonucunu karşılaştır.

SELECT ad, bolum, maas
FROM calisanlar
WHERE bolum = 'Yazılım' AND maas > 50000;

Kendini kontrol et

WHERE bolum = 'Yazılım' AND maas > 50000 sorgusunda her iki şart da sağlanmalı mıdır? Yanıt: Evet; AND işleci bağlı olduğu tüm koşulların aynı anda doğru olmasını zorunlu kılar.

Beklenen: ad | bolum | maas Ahmet | Yazılım | 65000

Bu içerik işine yaradı mı?

Görüşünü aşağıdan işaretleyebilir ve varsa notunu bırakabilirsin.