Like komutu SQL'de sadece metinsel alanlarda kullanılabilir. Üç değişik biçimde kullanılabilir ve kullanırken %(yüzde) işareti ile birlikte kullanırız. Like komutuyla verdiğimiz değeri içeren sonuçları aratırız. 1.Başlangıç değerine göre arama Örneğin Ürünler tablomuzda Ch ile başlayan ürünleri listeyelim. Select cümlemiz aşağıdaki gibi olacaktır;
SELECT * FROM Products p WHERE p.ProductName LIKE 'Ch%'
2.İçeren değerine göre arama Örneğin ürün tablamuzda isminde Ch geçen tüm ürünleri listeleyelim. Select cümlemiz aşağıdaki gibi olacaktır.
SELECT * FROM Products p WHERE p.ProductName LIKE '%Ch%'
3.Bitiş değerine göre arama Örneğin ürün tablomuzda sonu rs ile biten ürünleri listeleyelim. Select cümlemiz aşağıdaki gibi olacaktır.
SELECT* FROM Products p WHERE p.ProductName LIKE '%rs'
Like komutuda köşeli parantezin"[]" işlevi Koşul değeri olarak birden fazla seçenek kullanmamızı sağlar. Örneğin ürün tablamuzda a ve c ile başlayan ürünleri listeleyelim. Select cümlemiz aşağıdaki gibi olacaktır.
SELECT* FROM Products p WHERE p.ProductName LIKE '[ac]%'
Eğer köşeli parantezin içindeki harfler arasına tire"-" işareti koymuş olsaydık bu sefer a ile c arasındaki tüm harfleri içeren bir sorgu olacaktı. Yani baş harfi a,b,c olan tüm ürünleri listelemiş olacaktır. Bu sorgu için SQL cümlemiz aşağıdaki gibi olacaktır;
SELECT* FROM Products p WHERE p.ProductName LIKE '[a-c]%'
Eğer köşeli parantezin içindeki harflerin arasına, başına veya sonuna alt tire"_" koymuş olsaydık her alt tireyi bir karakter olarak algılayacaktı ve alt tire yerine herhangi bir karakter olan ürün isimlerini getirecekti. Böyle bir sordu için SQL cümlemiz aşağıdaki gibi olacaktır;
SELECT * FROM Products p WHERE p.ProductName LIKE '_h%'
Yukarıdaki sorgumuzda ilk harfi tüm değerler, ikinci harfi h olan tüm sonuçları listeledik. alt tire"_" ile yüzde"%" arasındaki fark, alt tire tek bir karakteri temsil eder yüzde ise sınırsız sayıda karakteri temsil eder. Eğer köşeli parantezin içinde üzeri"^" işareti kullanıyor olsaydık sonrasında gelen değeri içermeyen sonuçları sorgulamış olacaktık.Böyle bir sordu için SQL cümlemiz aşağıdaki gibi olacaktır;
SELECT * FROM Products p WHERE p.ProductName LIKE '[^A]%'
Yukarıdaki sorgumuzda ilk harfi A olmayan tüm sonuçları listeledik. Bu yazımda Sql'de LIKE kullanımını tüm yönleriyle anlatmaya çalıştım, umarım faydalı olmuştur. Bir sonraki yazıda görüşmek üzere.