SQL UCASE()

Dans le langage SQL, la fonction UCASE() permet de transformer toutes les lettres d’une chaîne de caractères pour les mettre en majuscule. Cela se révèle utile lorsqu’un système impose un certain formatage. Par ailleurs, utilisé conjointement avec la fonction SUBSTRING(), cela peut par exemple servir à mettre la première lettre d’une chaîne en majuscule.

Compatibilité : la fonction UCASE() fonctionne sous MySQL et Oracle et est un alias de la fonction UPPER(). Pour d’autres Systèmes de Gestion de Base de Données (SGBD), il convient d’utiliser seulement la fonction UPPER() qui quant à elle est compatible avec MySQL, PostgreSQL, SQLite, SQL Server et Oracle.

Syntaxe

La fonction s’utilise dans une requête en utilisant la syntaxe suivante :

SELECT UCASE('Exemple');

Cette requête retourne la chaîne de caractère “EXEMPLE” avec des caractères uniquement en majuscules.

Exemple

Pour comprendre l’utilité de la fonction dans un exemple très concret, imaginons une application quelconque possédant une table qui contient les utilisateurs. Dans la table des utilisateurs, plusieurs données sont enregistrées incluant le prénom, le nom et la ville.

Table utilisateur :

idprenomnomville
1ConstantLabordeToulouse
2BenjaminRollandLyon
3CosetteTellierBordeaux
4PaulDucheminGrenoble

Afficher les résultats avec des majuscules

La requête ci-dessous permet d’afficher les prénoms et les noms en majuscules.

SELECT id, UCASE(prenom) AS prenom_upper, UCASE(nom) AS nom_upper, ville
FROM utilisateur

Résultat :

idprenom_uppernom_upperville
1CONSTANTLABORDEToulouse
2BENJAMINROLLANDLyon
3COSETTETELLIERBordeaux
4PAULDUCHEMINGrenoble

Chercher un prénom en majuscule

Imaginons que l’utilisateur recherche un prénom en utilisant des majuscules et que l’ont sais que la table stock les prénoms en minuscule. Pour pouvoir retrouver un utilisateur à partir de son prénom en majuscule, il suffirait alors d’utiliser la fonction UCASE() dans la clause WHERE.

SELECT id, prenom, nom, ville
FROM utilisateur
WHERE UCASE(prenom) = 'PAUL'

Résultat :

idprenomnomville
4PaulDucheminGrenoble

En savoir plus

La fonction LCASE() fonctionne sur le même principe à la différence qu’elle transforme tous les caractères en minuscule.

Bon à savoir : la fonction UCASE s’apparente en quelque sorte à la fonction strtoupper() de PHP ou toUpperCase() de Java ou javascript.

Partager