In diesem SQL-Abschnitt besprechen wir, wie man zwei oder mehr Zeichenfolgen in der Structured Query Language vergleicht
Wir können zwei oder mehr Zeichenfolgen mit der STRCMP-Zeichenfolgenfunktion, dem LIKE-Operator und dem Gleichheitsoperator vergleichen.
STRCMP String-Funktion
STRCMP ist eine Funktion von string, die die angegebenen zwei Strings vergleicht und 0 ergibt, wenn die Länge des ersten Strings gleich der Länge des zweiten Strings ist. Wenn die Länge der ersten Zeichenfolge größer ist als die Länge der zweiten Zeichenfolge, gibt die Funktion 1 zurück, andernfalls -1.
Syntax der STRCMP-Funktion
SELECT STRCMP (String_1, String_2);
Beispiele für die STRCMP-String-Funktion
Beispiel 1: Die folgende SELECT-Abfrage vergleicht die Länge von JAVATPOINT- und EXAMPLES-Zeichenfolgen:
SELECT STRCMP ('JAVATPOINT', 'EXAMPLES');
Ausgabe:
1
Beispiel 2: Die folgende SELECT-Abfrage vergleicht die Länge von zwei Sätzen, die in der STRCMP-Funktion übergeben werden:
SELECT STRCMP ('Website is good', 'javatpoint is good');
Ausgabe:
-1
Beispiel 3: Die folgende SELECT-Abfrage vergleicht die Länge zweier Städte:
SELECT STRCMP ( 'Delhi', 'Noida');
Ausgabe:
0
LIKE-Operator
Der LIKE-Operator ordnet das jeweilige Muster jeder Zeile des Felds zu und gibt die übereinstimmenden Werte in der Ausgabe zurück. Dieser Operator wird immer mit der WHERE-Klausel in der SQL-Anweisung verwendet.
Syntax des Like-Operators
SELECT Column_Name_1, Column_Name_2, Column_Name_3, ……, Column_Name_N FROM Table_Name WHERE Column_Name LIKE Pattern;
Beispiel für einen LIKE-Operator
Nehmen wir die folgende Student-Tabelle:
Rollen_Nr | Vorname | Stadt | Alter | Prozentsatz | Grad |
---|---|---|---|---|---|
101 | Akasch | Delhi | 18 | 89 | A2 |
102 | Bhavesh | Kanpur | 19 | 93 | A1 |
103 | Yash | Delhi | zwanzig | 89 | A2 |
104 | Bhavna | Delhi | 19 | 78 | B1 |
105 | Yatin | Lucknow | zwanzig | 75 | B1 |
106 | Ishaka | Ghaziabad | 19 | 91 | C1 |
107 | Vivek | Goa | zwanzig | 80 | B2 |
Abfrage 1: Die folgende Abfrage zeigt den Datensatz der Studenten aus der obigen Student-Tabelle, deren First_Name mit einem „B“-Buchstaben beginnt:
SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE 'B%';
Ausgabe der obigen Abfrage:
Rollen_Nr | Vorname | Prozentsatz | Grad |
---|---|---|---|
102 | Bhavesh | 93 | A1 |
104 | Bhavna | 78 | B1 |
Wie in der obigen Ausgabe gezeigt, enthält die Tabelle nur die Aufzeichnungen der Bhavesh- und Bhavna-Schüler, da ihre Namen mit dem Buchstaben B beginnen.
Abfrage 2: Die folgende Abfrage zeigt den Datensatz der Studenten aus der angegebenen Student-Tabelle, deren First_Name das Zeichen „a“ an einer beliebigen Position enthält:
SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE '%a%' ;
Ausgabe der obigen Abfrage:
Rollen_Nr | Vorname | Stadt | Alter | Prozentsatz | Grad |
---|---|---|---|---|---|
101 | Akasch | Delhi | 18 | 89 | A2 |
102 | Bhavesh | Kanpur | 19 | 93 | A1 |
103 | Yash | Delhi | zwanzig | 89 | A2 |
104 | Bhavna | Delhi | 19 | 78 | B1 |
105 | Yatin | Lucknow | zwanzig | 75 | B1 |
106 | Ishaka | Ghaziabad | 19 | 91 | C1 |
Gleichheitsoperator (=)
Es handelt sich um eine Art Vergleichsoperator, der die übereinstimmenden Daten aus der angegebenen SQL-Tabelle anzeigt.
Dieser Operator wird häufig von Datenbankbenutzern in der strukturierten Abfragesprache verwendet.
Dieser Operator gibt TRUE-Zeilen aus der Datenbanktabelle zurück, wenn der Wert der Spalte mit dem in der Abfrage angegebenen Wert übereinstimmt.
Syntax des Gleichheitsoperators:
SELECT * FROM Table_Name WHERE Column_Name = Value;
Beispiel für einen Gleichheitsoperator
Nehmen wir die folgende Worker-Tabelle:
Worker_Id | Worker_Name | Arbeiter_Stadt | Arbeiter_Gehalt | Arbeiter_Bonus |
---|---|---|---|---|
101 | Anuj | Ghaziabad | 35000 | 2000 |
102 | Tushar | Lucknow | 29000 | 3000 |
103 | Vivek | Kalkutta | 35000 | 2500 |
104 | Shivam | Goa | 22000 | 3000 |
Die folgende Abfrage zeigt den Datensatz der Arbeiter aus der Worker-Tabelle, deren Worker_Salary 35000 beträgt:
SELECT * FROM Worker WHERE Worker_Salary = 35000;
Ausgabe:
Worker_Id | Worker_Name | Arbeiter_Stadt | Arbeiter_Gehalt | Arbeiter_Bonus |
---|---|---|---|---|
101 | Anuj | Ghaziabad | 35000 | 2000 |
103 | Vivek | Kalkutta | 35000 | 2500 |