Softmush.com, teknoloji, yazılım ve dijital dünyaya dair derinlemesine içeriklerle bilgiye ulaşmanın güvenilir adresi. - Softmush.com
“ Söz konusu olan vatansa, gerisi teferruat. ”
Mustafa K. Atatürk
SQL Dilinde `AND` Operatörünün Kullanımı

SQL Dilinde `AND` Operatörünün Kullanımı

SQL (Yapılandırılmış Sorgu Dili), veritabanlarından veri almak ve manipüle etmek için kullanılan standart dildir. Veri sorgularken, belirli kriterlere uyan kayıtları filtrelemek sıkça karşılaşılan bir gereksinimdir. Bu filtreleme işlemlerinde, birden fazla koşulu aynı anda değerlendirmek için mantıksal operatörler kullanılır. AND operatörü, bu mantıksal operatörlerden biridir ve WHERE cümleciği içinde iki veya daha fazla koşulun tümünün doğru olması durumunda kayıtları döndürmek için elzemdir. Bu makalede, SQL AND operatörünün detaylı kullanımını, sözdizimini ve pratik örneklerini inceleyeceğiz.


Sözdizimi


AND operatörünün temel sözdizimi, bir SELECT ifadesi içindeki WHERE cümleciğinde aşağıdaki gibi yapılandırılır:


SELECT kolon1, kolon2, ...
FROM tablo_adi
WHERE kosul1 AND kosul2 AND kosul3 ...;

Detaylı Açıklama


SELECT kolon1, kolon2, ...:
Bu kısım, sorgu sonucunda görmek istediğiniz sütunları belirtir. Tüm sütunları seçmek için * karakterini kullanabilirsiniz.


FROM tablo_adi:
Veri çekmek istediğiniz tabloyu belirtir.


WHERE kosul1 AND kosul2 AND kosul3 ...:
Bu kısım, AND operatörünün kalbidir. WHERE cümleciği, belirtilen koşulların doğru olduğu satırları filtreler. AND operatörü, kendisinden önce ve sonra gelen koşulların (kosul1, kosul2, kosul3 vb.) tümünün aynı anda doğru (TRUE) olması durumunda o satırı sonuç kümesine dahil eder. Eğer koşullardan herhangi biri yanlış (FALSE) ise, o satır sonuç kümesine dahil edilmez. Birden fazla AND operatörü kullanarak istediğiniz kadar koşulu birleştirebilirsiniz. Her kosul, karşılaştırma operatörleri (=, <, >, <=, >=, <> veya !=) veya diğer mantıksal operatörler (LIKE, IN, BETWEEN vb.) ile oluşturulabilir.


Pratik Kullanım Örnekleri


Aşağıdaki örnekler, bir Personel tablosu üzerinden AND operatörünün farklı senaryolarda nasıl kullanıldığını göstermektedir. Personel tablosunun PersonelID, Ad, Soyad, Departman, Maas ve DogumTarihi sütunlarına sahip olduğunu varsayalım.


Örnek 1: İki Basit Koşulu Birleştirme


Departmanı 'Satış' olan ve maaşı 5000'den yüksek olan tüm personelin adını ve soyadını listeleyelim.


SELECT Ad, Soyad
FROM Personel
WHERE Departman = 'Satış' AND Maas > 5000;

Açıklama: Bu sorgu, Departman sütununun değeri 'Satış' olan VE Maas sütununun değeri 5000'den büyük olan satırları getirir. Her iki koşul da aynı anda sağlanmalıdır.


Örnek 2: Üç Koşulu Birleştirme


Departmanı 'Muhasebe' olan, maaşı 6000 ile 8000 arasında olan ve 1990 yılından sonra doğmuş personeli listeleyelim.


SELECT Ad, Soyad, Maas, DogumTarihi
FROM Personel
WHERE Departman = 'Muhasebe'
  AND Maas BETWEEN 6000 AND 8000
  AND DogumTarihi > '1990-01-01';

Açıklama: Burada üç koşul AND ile birleştirilmiştir: Departman 'Muhasebe' olacak, Maas 6000 ile 8000 (dahil) arasında olacak VE DogumTarihi 1990'ın ilk gününden sonra olacak. Tüm bu koşullar doğru olduğunda satır sonuç kümesine dahil edilir.


Örnek 3: `AND` ve `OR` Operatörlerini Birlikte Kullanma


Parantez kullanımı, mantıksal operatörlerin değerlendirme sırasını belirlemek için kritik öneme sahiptir. Departmanı 'İnsan Kaynakları' olan VE (maaşı 7000'den az VEYA 1985'ten önce doğmuş) personeli listeleyelim.


SELECT Ad, Soyad, Departman, Maas, DogumTarihi
FROM Personel
WHERE Departman = 'İnsan Kaynakları'
  AND (Maas < 7000 OR DogumTarihi < '1985-01-01');

Açıklama: Bu sorguda, parantezler içindeki OR koşulu önce değerlendirilir. Yani, departman 'İnsan Kaynakları' olacak VE (maaş 7000'den az olacak VEYA doğum tarihi 1985'ten önce olacak) koşulu sağlanacak. Parantezler olmasaydı, AND operatörü OR operatöründen daha yüksek önceliğe sahip olduğu için sorgu farklı bir sonuç verebilirdi.


Önemli Notlar


  • Mantıksal Öncelik: SQL'de mantıksal operatörlerin belirli bir öncelik sırası vardır. NOT en yüksek önceliğe sahipken, onu AND ve ardından OR takip eder. Bu, AND operatörlerinin OR operatörlerinden önce değerlendirileceği anlamına gelir. Karmaşık koşullarda beklenen sonucu almak için parantez () kullanmak her zaman iyi bir uygulamadır.

  • Performans: WHERE cümleciğindeki koşulların sırası, bazı veritabanı sistemlerinde sorgu performansını etkileyebilir. Genellikle, en kısıtlayıcı koşulu (en az sayıda satırı eleyecek koşulu) ilk sıraya koymak veya dizinli (indexlenmiş) sütunlar üzerindeki koşulları öne almak performansı artırabilir. Ancak modern veritabanı optimizatörleri bu tür durumları genellikle iyi yönetir.

  • Boş Değerler (NULL): NULL değerleri ile karşılaştırma yaparken dikkatli olun. NULL AND TRUE veya NULL AND FALSE ifadelerinin sonucu NULL olur. WHERE cümleciği yalnızca TRUE sonuçlarını döndürdüğü için, NULL sonuçlar elenir. NULL değerleri kontrol etmek için IS NULL veya IS NOT NULL operatörlerini kullanmalısınız.

  • Okunabilirlik: Birden fazla AND koşulu kullanırken, sorgunuzu satırlara ayırarak ve girinti kullanarak daha okunaklı hale getirin.

Yayınlanma Tarihi: 2025-10-14 20:00:35
JavaScript Dilinde JS Numbers Kullanımı
Önceki Haber

JavaScript Dilinde JS Numbers Kullanımı

JavaScript Makaleleri
Sonraki Haber

Python Dilinde Konsola Çıktı Vermek: `print()` Fonksiyonunun Kapsamlı Rehberi

Python Makaleleri
Python Dilinde Konsola Çıktı Vermek: `print()` Fonksiyonunun Kapsamlı Rehberi

Yorum yap

Yorum yapabilmek için  giriş  yapmalısınız.

Yorumlar

Bu yazı hakkında henüz yorum yapılmamıştır.
× SQL Dilinde SQL UPDATE Kullanımı: Veri Güncelleme Rehberi
Bu ilginizi çekebilir

SQL Dilinde SQL UPDATE Kullanımı: Veri Güncelleme Rehberi

Veritabanı yönetim sistemlerinde (DBMS) mevcut kayıtların üzerinde değişiklik yapmak,...