STRCMP() Function in MySQL
Last Updated :
11 Jan, 2021
Improve
STRCMP() function in MySQL is used to compare two strings. If both of the strings are same then it returns 0, if the first argument is smaller than the second according to the defined order it returns -1 and it returns 1 when the second one is smaller the first one.
Syntax : STRCMP(Str1, Str2)
Parameter : This method accepts two-parameter as described below :
Example-2 : STRCMP() function to compare two string when second string is smaller than the first string. Here, the return value will be 1.
Example-3 : STRCMP() function to compare two string when second string is bigger than the first string. As the second string is greater than the first one the result will be -1.
Example-4 : STRCMP() function to compare two string when at least one string is NULL.
Example-5 : STRCMP() function can also be used on column data. To demonstrate create a table named StudentDetails.
Now, we are going to compare between First_Name and Last_Name column using STRCMP Function.
- str1 : It is the first string used for comparison.
- str2 : It is the second string used for comparison.
- If string1 = string2, this function returns 0
- If string1 < string2, this function returns -1
- If string1 > string2, this function returns 1
- If any one or both string is NULL, this function returns NULL .
Select STRCMP('Geeks', 'Geeks') As 'Cmp_Value'Output :
Cmp_Value |
---|
0 |
Select STRCMP('Geeks', 'Geek') As 'Cmp_Value'Output :
Cmp_Value |
---|
1 |
Select STRCMP('Geek', 'Geeks') As 'Cmp_Value'Output :
Cmp_Value |
---|
-1 |
Select STRCMP('Geek', NULL) As 'Cmp_Value'Output :
Cmp_Value |
---|
NULL |
CREATE TABLE StudentDetails( Student_id INT AUTO_INCREMENT, First_name VARCHAR(100) NOT NULL, Last_name VARCHAR(100) NOT NULL, Student_Class VARCHAR(20) NOT NULL, TotalExamGiven INT NOT NULL, PRIMARY KEY(Student_id )Inserting data into the Table :
INSERT INTO StudentDetails(First_name, Last_name, Class, TotalExamGiven ) VALUES ('Sayan', 'Jana', 'IX', 8 ), ('Nitin', 'Sharma', 'X', 5 ), ('Aniket', 'Srivastava', 'XI', 6 ), ('Abdur', 'Ali', 'X', 7 ), ('Riya', 'Malakar', 'IX', 4 ), ('Jony', 'Patel', 'X', 10 ), ('Deepak', 'Saini', 'X', 7 ), ('Ankana', 'Biswas', 'XII', 5 ), ('Shreya', 'Majhi', 'X', 8 ) ;To verify used the following command as follows.
SELECT * FROM StudentDetails;Output :
STUDENT_ID | FIRST_NAME | LAST_NAME | CLASS | TOTALEXAMGIVEN |
---|---|---|---|---|
1 | Sayan | Jana | IX | 8 |
2 | Nitin | Sharma | X | 5 |
3 | Aniket | Srivastava | XI | 6 |
4 | Abdur | Ali | X | 7 |
5 | Riya | Malakar | IX | 4 |
6 | Jony | Patel | X | 10 |
7 | Deepak | Saini | X | 7 |
8 | Ankana | Biswas | XII | 5 |
9 | Shreya | Majhi | X | 8 |
SELECT First_Name, Last_Name, STRCMP(First_Name, Last_Name) AS Cmp_Value FROM StudentDetails;Output :
FIRST_NAME | LAST_NAME | CMP_VALUE |
---|---|---|
Sayan | Jana | 1 |
Nitin | Sharma | -1 |
Aniket | Srivastava | -1 |
Abdur | Ali | -1 |
Riya | Malakar | 1 |
Jony | Patel | -1 |
Deepak | Saini | -1 |
Ankana | Biswas | -1 |
Shreya | Majhi | 1 |