In MySQL, the LOWER() function converts uppercase characters to lowercase, according to the current character set mapping (the default mapping is utf8mb4).
Syntax
The syntax goes like this:
LOWER(str)
Where str is the string to be changed to lowercase.
Example
Here’s an example:
SELECT LOWER('CAT');
Result:
+--------------+
| LOWER('CAT') |
+--------------+
| cat |
+--------------+
Of course, if the string already contains any lowercase characters, those characters will remain lowercase.
Example:
SELECT LOWER('Cat');
Result:
+--------------+
| LOWER('Cat') |
+--------------+
| cat |
+--------------+
Database Example
Here’s an example of selecting data from a database and converting it to lowercase:
USE Music;
SELECT
ArtistName AS Original,
LOWER(ArtistName) AS Lowercase
FROM Artists
LIMIT 5;
Result:
+------------------+------------------+ | Original | Lowercase | +------------------+------------------+ | Iron Maiden | iron maiden | | AC/DC | ac/dc | | Allan Holdsworth | allan holdsworth | | Buddy Rich | buddy rich | | Devin Townsend | devin townsend | +------------------+------------------+
Binary Strings
This function doesn’t work on binary strings. If you need to use it on a binary string, you’ll need to convert it to a nonbinary string first. Here’s an example:
SET @str = BINARY 'Cat'; SELECT LOWER(@str) AS 'Binary', LOWER(CONVERT(@str USING utf8mb4)) AS 'Nonbinary';
Result:
+--------+-----------+ | Binary | Nonbinary | +--------+-----------+ | Cat | cat | +--------+-----------+
The LCASE() Function
The LCASE() function is a synonym for LOWER(). Note that if you use LCASE() within a view, it will be rewritten and stored as LOWER().
Convert to Uppercase
The UPPER() and UCASE() functions work the same way to convert characters to uppercase.