U ovom odjeljku o SQL-u raspravljat ćemo o tome kako usporediti dva ili više nizova u Structured Query Language
Možemo usporediti dva ili više nizova koristeći funkciju niza STRCMP, operator LIKE i operator Equal.
STRCMP String funkcija
STRCMP je funkcija niza koja uspoređuje navedena dva niza i daje 0 ako je duljina prvog niza jednaka duljini drugog niza. Ako je duljina prvog niza veća od duljine drugog niza, tada funkcija vraća 1, inače -1.
Sintaksa STRCMP funkcije
SELECT STRCMP (String_1, String_2);
Primjeri funkcije STRCMP String
Primjer 1: Sljedeći SELECT upit uspoređuje duljinu nizova JAVATPOINT i EXAMPLES:
SELECT STRCMP ('JAVATPOINT', 'EXAMPLES');
Izlaz:
1
Primjer 2: Sljedeći SELECT upit uspoređuje duljinu dviju rečenica koje prolaze u funkciji STRCMP:
SELECT STRCMP ('Website is good', 'javatpoint is good');
Izlaz:
-1
Primjer 3: Sljedeći SELECT upit uspoređuje duljinu dva grada:
SELECT STRCMP ( 'Delhi', 'Noida');
Izlaz:
0
LIKE Operator
Operator LIKE povezuje određeni uzorak sa svakim redom polja i vraća podudarne vrijednosti u izlazu. Ovaj se operator uvijek koristi s klauzulom WHERE u SQL izjavi.
Sintaksa Like operatora
SELECT Column_Name_1, Column_Name_2, Column_Name_3, ……, Column_Name_N FROM Table_Name WHERE Column_Name LIKE Pattern;
Primjer LIKE operatora
Uzmimo sljedeću Studentsku tablicu:
Rola_br | Ime | Grad | Dob | Postotak | Razred |
---|---|---|---|---|---|
101 | Akaša | Delhi | 18 | 89 | A2 |
102 | Bhavesh | Kanpur | 19 | 93 | A1 |
103 | Yash | Delhi | dvadeset | 89 | A2 |
104 | Bhavna | Delhi | 19 | 78 | B1 |
105 | jatin | Lucknow | dvadeset | 75 | B1 |
106 | Ishaka | Ghaziabad | 19 | 91 | C1 |
107 | Vivek | Goa | dvadeset | 80 | B2 |
Upit 1: Sljedeći upit prikazuje zapis onih učenika iz gornje tablice Student čije First_Name počinje slovom 'B':
SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE 'B%';
Izlaz gornjeg upita:
Rola_br | Ime | Postotak | Razred |
---|---|---|---|
102 | Bhavesh | 93 | A1 |
104 | Bhavna | 78 | B1 |
Kao što je prikazano u gornjem izlazu, tablica sadrži samo zapis učenika Bhavesh i Bhavna jer njihova imena počinju slovom B.
Upit 2: Sljedeći upit prikazuje zapis onih studenata iz zadane tablice Student čije First_Name sadrži znak 'a' na bilo kojoj poziciji:
SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE '%a%' ;
Izlaz gornjeg upita:
Rola_br | Ime | Grad | Dob | Postotak | Razred |
---|---|---|---|---|---|
101 | Akaša | Delhi | 18 | 89 | A2 |
102 | Bhavesh | Kanpur | 19 | 93 | A1 |
103 | Yash | Delhi | dvadeset | 89 | A2 |
104 | Bhavna | Delhi | 19 | 78 | B1 |
105 | jatin | Lucknow | dvadeset | 75 | B1 |
106 | Ishaka | Ghaziabad | 19 | 91 | C1 |
Operator jednakosti (=)
To je vrsta operatora usporedbe koji prikazuje podudarne podatke iz dane SQL tablice.
Ovaj operator često koriste korisnici baze podataka u Structured Query Language.
Ovaj operator vraća TRUE retke iz tablice baze podataka ako je vrijednost stupca ista kao vrijednost navedena u upitu.
Sintaksa operatora jednakosti:
SELECT * FROM Table_Name WHERE Column_Name = Value;
Primjer jednakog operatora
Uzmimo sljedeću radnu tablicu:
Id_radnika | Ime_radnika | Radnički_Grad | Radnička_Plaća | Radnički_bonus |
---|---|---|---|---|
101 | Anuj | Ghaziabad | 35000 | 2000. godine |
102 | Tušar | Lucknow | 29000 | 3000 |
103 | Vivek | Kolkata | 35000 | 2500 |
104 | Shivam | Goa | 22000 | 3000 |
Sljedeći upit prikazuje zapis onih radnika iz tablice radnika čija je Worker_Salary 35000:
SELECT * FROM Worker WHERE Worker_Salary = 35000;
Izlaz:
Id_radnika | Ime_radnika | Radnički_Grad | Radnička_Plaća | Radnički_bonus |
---|---|---|---|---|
101 | Anuj | Ghaziabad | 35000 | 2000. godine |
103 | Vivek | Kolkata | 35000 | 2500 |