How LOCATE() function can be used with MySQL WHERE clause?

MySQLMySQLi Database

When we use LOCATE() function with MySQL WHERE clause, we need to provide the substring as first argument and column name of the table as the second argument along with a comparison operator. Following is an example using ‘Student’ table to demonstrate it −

Example

Suppose we have the following values in ‘Student’ table −

mysql> Select * from Student;

+------+---------+---------+-----------+
| Id   | Name    | Address | Subject   |
+------+---------+---------+-----------+
| 1    | Gaurav  | Delhi   | Computers |
| 2    | Aarav   | Mumbai  | History   |
| 15   | Harshit | Delhi   | Commerce  |
| 20   | Gaurav  | Jaipur  | Computers |
| 21   | Yashraj | NULL    | Math      |
+------+---------+---------+-----------+

5 rows in set (0.02 sec)

Now, following query show how we can use LOCATE() function with WHERE caluse

mysql> Select Name, LOCATE('av',name)As Result from student where LOCATE('av',Name) > 0;

+--------+--------+
| Name   | Result |
+--------+--------+
| Gaurav |      5 |
| Aarav  |      4 |
| Gaurav |      5 |
+--------+--------+

3 rows in set (0.00 sec)

mysql> select name, LOCATE('av',name)As Result from student where LOCATE('av',Name)=0 ;

+---------+--------+
| name    | Result |
+---------+--------+
| Harshit |      0 |
| Yashraj |      0 |
+---------+--------+

2 rows in set (0.00 sec)
raja
Published on 20-Feb-2018 12:01:08
Advertisements