SQL - LIKE Cümlesi
SQL LIKEcümlesi, joker karakter operatörleri kullanarak bir değeri benzer değerlerle karşılaştırmak için kullanılır. LIKE işleci ile birlikte kullanılan iki joker karakter vardır.
- Yüzde işareti (%)
- Alt çizgi (_)
Yüzde işareti sıfır, bir veya birden çok karakteri temsil eder. Alt çizgi, tek bir sayıyı veya karakteri temsil eder. Bu semboller kombinasyonlarda kullanılabilir.
Sözdizimi
% Ve _'nin temel sözdizimi aşağıdaki gibidir -
SELECT FROM table_name
WHERE column LIKE 'XXXX%'
or
SELECT FROM table_name
WHERE column LIKE '%XXXX%'
or
SELECT FROM table_name
WHERE column LIKE 'XXXX_'
or
SELECT FROM table_name
WHERE column LIKE '_XXXX'
or
SELECT FROM table_name
WHERE column LIKE '_XXXX_'
VE veya VEYA operatörlerini kullanarak N sayıda koşulu birleştirebilirsiniz. Burada XXXX, herhangi bir sayısal değer veya dize değeri olabilir.
Misal
Aşağıdaki tabloda, WHERE parçasının '%' ve '_' operatörleriyle farklı LIKE yan tümcesine sahip olduğunu gösteren birkaç örnek vardır -
Sr.No. | Açıklama ve Açıklama |
---|---|
1 | WHERE SALARY LIKE '200%' 200 ile başlayan tüm değerleri bulur. |
2 | WHERE SALARY LIKE '%200%' Herhangi bir konumda 200 olan değerleri bulur. |
3 | WHERE SALARY LIKE '_00%' İkinci ve üçüncü konumlarda 00 olan tüm değerleri bulur. |
4 | WHERE SALARY LIKE '2_%_%' 2 ile başlayan ve en az 3 karakter uzunluğunda olan tüm değerleri bulur. |
5 | WHERE SALARY LIKE '%2' 2 ile biten tüm değerleri bulur. |
6 | WHERE SALARY LIKE '_2%3' İkinci konumda 2 olan ve 3 ile biten değerleri bulur. |
7 | WHERE SALARY LIKE '2___3' 2 ile başlayan ve 3 ile biten beş basamaklı bir sayıdaki tüm değerleri bulur. |
Gerçek bir örnek alalım, aşağıda gösterilen kayıtların bulunduğu MÜŞTERİLER tablosunu ele alalım.
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Aşağıda, MAAŞ'ın 200 ile başladığı MÜŞTERİLER tablosundaki tüm kayıtları görüntüleyen bir örnek verilmiştir.
SQL> SELECT * FROM CUSTOMERS
WHERE SALARY LIKE '200%';
Bu, aşağıdaki sonucu verecektir -
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
+----+----------+-----+-----------+----------+