logo

SQL Karşılaştırma Dizesi

Bu SQL bölümünde, Yapılandırılmış Sorgu Dili'nde iki veya daha fazla dizenin nasıl karşılaştırılacağını tartışacağız.

STRCMP dize işlevini, LIKE operatörünü ve Eşit operatörünü kullanarak iki veya daha fazla dizeyi karşılaştırabiliriz.

STRCMP Dize işlevi

STRCMP, belirtilen iki dizeyi karşılaştıran ve ilk dizenin uzunluğu ikinci dizenin uzunluğuna eşitse 0 veren bir dize işlevidir. İlk dizenin uzunluğu ikinci dizenin uzunluğundan fazlaysa işlev 1, aksi takdirde -1 değerini döndürür.

STRCMP İşlevinin Sözdizimi

 SELECT STRCMP (String_1, String_2); 

STRCMP Dizesi işlevi örnekleri

Örnek 1: Aşağıdaki SELECT sorgusu, JAVATPOINT ve EXAMPLES dizelerinin uzunluğunu karşılaştırır:

 SELECT STRCMP ('JAVATPOINT', 'EXAMPLES'); 

Çıktı:

 1 

Örnek 2: Aşağıdaki SELECT sorgusu STRCMP işlevinde geçen iki cümlenin uzunluğunu karşılaştırır:

 SELECT STRCMP ('Website is good', 'javatpoint is good'); 

Çıktı:

 -1 

Örnek 3: Aşağıdaki SELECT sorgusu iki şehrin uzunluğunu karşılaştırır:

 SELECT STRCMP ( 'Delhi', 'Noida'); 

Çıktı:

 0 

BEĞEN Operatörü

LIKE operatörü, belirli modeli alanın her satırıyla eşleştirir ve eşleşen değerleri çıktıda döndürür. Bu operatör her zaman SQL deyiminde WHERE deyimiyle birlikte kullanılır.

Beğen operatörünün sözdizimi

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ……, Column_Name_N FROM Table_Name WHERE Column_Name LIKE Pattern; 

LIKE Operatörü Örneği

Aşağıdaki Öğrenci tablosunu ele alalım:

Rulo_Hayır İlk adı Şehir Yaş Yüzde Seviye
101 Akaşa Delhi 18 89 A2
102 Bhaveş Kanpur 19 93 A1
103 Yaşa Delhi yirmi 89 A2
104 Bhavna Delhi 19 78 B1
105 yatin şans eseri yirmi 75 B1
106 Ishaka Gaziabad 19 91 C1
107 Vivek Goa yirmi 80 B2

Sorgu 1: Aşağıdaki sorgu, yukarıdaki Öğrenci tablosunda, Adı 'B' harfiyle başlayan öğrencilerin kaydını gösterir:

 SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE 'B%'; 

Yukarıdaki sorgunun çıktısı:

Rulo_Hayır İlk adı Yüzde Seviye
102 Bhaveş 93 A1
104 Bhavna 78 B1

Yukarıdaki çıktıda gösterildiği gibi, isimleri B harfiyle başladığı için tablo yalnızca Bhavesh ve Bhavna öğrencilerinin kaydını içermektedir.

Sorgu 2: Aşağıdaki sorgu, verilen Öğrenci tablosundaki Ad_Adı herhangi bir konumda 'a' karakterini içeren öğrencilerin kaydını gösterir:

 SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE '%a%' ; 

Yukarıdaki sorgunun çıktısı:

Rulo_Hayır İlk adı Şehir Yaş Yüzde Seviye
101 Akaşa Delhi 18 89 A2
102 Bhaveş Kanpur 19 93 A1
103 Yaşa Delhi yirmi 89 A2
104 Bhavna Delhi 19 78 B1
105 yatin şans eseri yirmi 75 B1
106 Ishaka Gaziabad 19 91 C1

Eşit Operatör (=)

Verilen SQL tablosundan eşleşen verileri gösteren bir tür karşılaştırma operatörüdür.

Bu operatör, Yapılandırılmış Sorgu Dili'nde veritabanı kullanıcıları tarafından oldukça kullanılmaktadır.

Bu operatör, sütunun değeri sorguda belirtilen değerle aynıysa, veritabanı tablosundan TRUE satırlarını döndürür.

Eşit operatörünün sözdizimi:

 SELECT * FROM Table_Name WHERE Column_Name = Value; 

Eşit Operatör Örneği

Aşağıdaki Worker tablosunu ele alalım:

İşçi_Kimliği Çalışan_Adı İşçi_Şehri İşçi_Maaş İşçi_Bonus
101 Anuj Gaziabad 35000 2000
102 Tuşar şans eseri 29000 3000
103 Vivek Kalküta 35000 2500
104 Şivam Goa 22000 3000

Aşağıdaki sorgu, Worker_Salary 35000 olan işçi tablosundaki işçilerin kaydını gösterir:

 SELECT * FROM Worker WHERE Worker_Salary = 35000; 

Çıktı:

İşçi_Kimliği Çalışan_Adı İşçi_Şehri İşçi_Maaş İşçi_Bonus
101 Anuj Gaziabad 35000 2000
103 Vivek Kalküta 35000 2500