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 LIKE Operatörü: Desen Tabanlı Arama Rehberi

SQL Dilinde LIKE Operatörü: Desen Tabanlı Arama Rehberi

SQL veritabanlarında, belirli bir desene uyan metin değerlerini aramak, veri filtreleme işlemlerinin temel bir parçasıdır. LIKE operatörü, bu tür desen tabanlı aramaları gerçekleştirmek için kullanılır. Bu operatör, tam eşleşme yerine kısmi eşleşmeleri veya belirli kalıpları içeren metinleri bulmak gerektiğinde devreye girer ve esnek sorgular oluşturmaya olanak tanır.


Sözdizimi


LIKE operatörünün genel sözdizimi aşağıdaki gibidir:

SELECT kolon_adi(lar)
FROM tablo_adi
WHERE kolon_adi LIKE desen;

Detaylı Açıklama


LIKE operatörü, WHERE yan tümcesi ile birlikte kullanılarak belirtilen bir sütundaki değerlerin belirli bir desene uyup uymadığını kontrol eder. Bu deseni tanımlamak için iki özel joker karakter (wildcard character) kullanılır:


  • % (Yüzde İşareti): Sıfır veya daha fazla karakter dizisini temsil eder. Örneğin, 'A%' ile başlayan tüm değerleri, '%A' ile biten tüm değerleri ve '%A%' ile A içeren tüm değerleri bulabilirsiniz.

  • _ (Alt Çizgi): Tek bir karakteri temsil eder. Örneğin, 'A_C', 'ABC', 'AEC' gibi üç karakterli ve ortasında herhangi bir karakter olan değerleri bulur.

Bu joker karakterler, arama desenini oluşturmak için birleştirilebilir.


Pratik Kullanım Örnekleri


Aşağıdaki örnekler, LIKE operatörünün farklı senaryolarda nasıl kullanıldığını göstermektedir. Bu örneklerde, bir Urunler tablosunun UrunAdi sütununda arama yaptığımızı varsayalım.


Örnek 1: Belirli Bir Harf Dizisiyle Başlayan Değerler


'Bilgisayar' kelimesiyle başlayan tüm ürün adlarını bulmak için:

SELECT UrunAdi
FROM Urunler
WHERE UrunAdi LIKE 'Bilgisayar%';

Örnek 2: Belirli Bir Harf Dizisiyle Biten Değerler


'Mouse' kelimesiyle biten tüm ürün adlarını bulmak için:

SELECT UrunAdi
FROM Urunler
WHERE UrunAdi LIKE '%Mouse';

Örnek 3: Belirli Bir Harf Dizisi İçeren Değerler


Ürün adında 'USB' ifadesi geçen tüm ürünleri bulmak için:

SELECT UrunAdi
FROM Urunler
WHERE UrunAdi LIKE '%USB%';

Örnek 4: Belirli Bir Karakter Deseniyle Eşleşen Değerler


İkinci harfi 'a' olan ve toplamda en az üç karakterli ürün adlarını bulmak için:

SELECT UrunAdi
FROM Urunler
WHERE UrunAdi LIKE '_a%';

Örnek 5: NOT LIKE Kullanımı


Belirli bir desene uymayan değerleri dışlamak için NOT LIKE operatörü kullanılır. Örneğin, 'Telefon' kelimesiyle başlamayan tüm ürün adlarını bulmak için:

SELECT UrunAdi
FROM Urunler
WHERE UrunAdi NOT LIKE 'Telefon%';

Önemli Notlar


  • Büyük/Küçük Harf Duyarlılığı: LIKE operatörünün büyük/küçük harf duyarlılığı, kullanılan veritabanı sistemine (örneğin, PostgreSQL, MySQL, SQL Server) ve sütunun harmanlama (collation) ayarlarına bağlıdır. Bazı sistemler varsayılan olarak duyarsızken, bazıları duyarlı olabilir veya harmanlama ayarları ile bu durum değiştirilebilir. Büyük/küçük harf duyarlılığından bağımsız arama yapmak için genellikle LOWER() veya UPPER() fonksiyonları ile birlikte kullanılır: WHERE LOWER(kolon_adi) LIKE LOWER('%desen%').

  • Performans: Özellikle '%' ile başlayan desenler (örneğin, LIKE '%desen') indeks kullanımını zorlaştırabilir ve büyük tablolarda sorgu performansını olumsuz etkileyebilir. Mümkünse, deseni bir harf veya karakter dizisiyle başlatmak (LIKE 'desen%') daha performanslı olabilir.

  • Kaçış Karakterleri (Escape Characters): Eğer aradığınız desende % veya _ gibi joker karakterler varsa ve bunları literal olarak aramak istiyorsanız, bir kaçış karakteri (escape character) kullanmanız gerekir. Çoğu SQL veritabanı, LIKE '%50\_%' ESCAPE '\' gibi bir sözdizimine izin verir, bu da '50_' ifadesini içeren değerleri arar.

  • Regular Expressions (Regex): Daha karmaşık desen eşleştirme ihtiyaçları için, birçok veritabanı REGEXP veya RLIKE gibi düzenli ifade operatörlerini destekler. Bu operatörler, LIKE operatörüne göre çok daha güçlü ve esnek desen eşleştirme yetenekleri sunar.

Yayınlanma Tarihi: 2025-10-18 10:00:33
JavaScript’te Temel Programlama: Sözdizimi ve Kullanım
Önceki Haber

JavaScript’te Temel Programlama: Sözdizimi ve Kullanım

JavaScript Makaleleri
Sonraki Haber

Python Dilinde Fonksiyonların Etkin Kullanımı

Python Makaleleri
Python Dilinde Fonksiyonların Etkin Kullanımı

Yorum yap

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

Yorumlar

Bu yazı hakkında henüz yorum yapılmamıştır.
× SQL IN Operatörü: Setler İçindeki Veri Kontrolü
Bu ilginizi çekebilir

SQL IN Operatörü: Setler İçindeki Veri Kontrolü

Veritabanı yönetim sistemlerinde (DBMS) veri sorgulama, belirli kriterlere uyan kayıtları...