MySQL Lowercase in Where Clause
The LOWER() function in SQL language allows you to transform all uppercase characters in a string into lowercase. This function can therefore be useful to present results in a certain way.
Warning: you should probably pay attention to the encoding used. With MySQL, the function uses by default the ISO 8859-1 Latin1 set.
Syntax:
The syntax of a query using this SQL function is as follows:
SELECT column1, column2, .... FROM table_name WHERE LOWER(column1) = 'value-in-lowercase'
Example :
Let’s suppose an application with users. This application uses a table that stores the name, age, and address of each user.
Users Table:
+----------+-----------+--------+-------------------------------+ | userID | name | age | address | +----------+-----------+--------+-------------------------------+ | 101 | ALEX | 25 | 819 Saint Francis Way | | 102 | EMILY | 15 | 171 Jarvisville Road Michigan | | 103 | JEAN | 35 | 188 Clay Street Indiana | | 104 | BOB | 40 | 285 Java Lane Missouri | +----------+-----------+--------+-------------------------------+
Search for a name in lower case
Let’s suppose that the user is looking for a name using lowercase letters and we know that the table stores names in uppercase. In order to find a user from his name in lower case, it would be enough to use the LOWER() function in WHERE clause, like this:
SELECT userID, name, age, address FROM users WHERE LOWER(name) = 'jean'
Output:
+----------+-----------+--------+-------------------------------+ | userID | name | age | address | +----------+-----------+--------+-------------------------------+ | 103 | JEAN | 35 | 188 Clay Street Indiana | +----------+-----------+--------+-------------------------------+