La fonction LOWER() dans le langage SQL permet de transformer tous les caractères d’une chaîne de caractère en minuscules. La fonction peut donc avoir sont utilité pour un affichage spécifique des données.
Attention : il faut se méfier de l’encodage des données. Par exemple, avec MySQL la fonction utilise par défaut le jeu ISO 8859-1 Latin1.
A noter : cette fonction SQL gère les caractères multi-octets (exemple : œ).
Compatibilité : la fonction SQL LOWER() fonctionne notamment sous MySQL, PostgreSQL, SQLite, SQL server et Oracle. A noter que sous MySQL et Oracle la fonction peut aussi être appelé grâce à l’alias LCASE().
Syntaxe
Il est possible d’utiliser cette fonction très simplement en l’utilisant dans une requête SQL telle que celle ci-dessous:
SELECT LOWER('BONJOUR tout le monde');
Résultat :
bonjour tout le monde
Ce résultat permet de montrer clairement que les lettres en majuscules seront transformée en minuscule, et celle qui le sont déjà restent en minuscules.
Exemple
Imaginons une table utilisateur contenant le prénom, le nom et la ville des utilisateurs.
Table utilisateur :
id | prenom | nom | ville |
---|---|---|---|
1 | Constant | LABORDE | Toulouse |
2 | Benjamin | ROLLAND | Lyon |
3 | Cosette | TELLIER | Bordeaux |
4 | Paul | DUCHEMIN | Grenoble |
Afficher les résultats avec des minuscules
Il est possible d’afficher les prénoms et les noms en minuscules en utilisant cette requête SQL :
SELECT id, LOWER(prenom) AS prenom_lower, LOWER(nom) AS nom_lower, ville FROM utilisateur
Résultat :
id | prenom | nom | ville |
---|---|---|---|
1 | constant | laborde | Toulouse |
2 | benjamin | rolland | Lyon |
3 | cosette | tellier | Bordeaux |
4 | paul | duchemin | Grenoble |
En savoir plus
La fonction UPPER() est similaire car elle permet quant a elle de transformer un texte en majuscule.
Bon à savoir : la fonction SQL LOWER() s’apparente en quelque sorte à la fonction strtolower() de PHP ou toLowerCase() de Java ou javascript.