Accéder au contenu principal
Documents
FonctionsExpressionsKeywordsDéclarationsClauses

Fonction UPPER() de MySQL

La fonction `UPPER()` de MySQL est utilisée pour convertir une chaîne de caractères en majuscules. Elle est utile pour garantir une capitalisation uniforme, en particulier lors de comparaisons insensibles à la casse ou lors du formatage des résultats. La fonction `UPPER()` fait partie des fonctions de chaîne de MySQL et est disponible dans toutes les versions standard de MySQL.

Utilisation

La fonction `UPPER()` est généralement utilisée lorsque vous devez convertir des données textuelles en majuscules à des fins de cohérence ou de comparaison. Il s'applique à une chaîne ou à une colonne contenant des données textuelles.

sql
UPPER(string)

Dans cette syntaxe, `string` est le texte ou la valeur de la colonne à convertir en majuscules.

Exemples

1. Conversion de base des majuscules

sql
SELECT UPPER('hello world');

Cet exemple convertit la chaîne "hello world" en "HELLO WORLD".

2. Conversion des données des colonnes

sql
SELECT UPPER(first_name) AS uppercase_name
FROM employees;

Ici, les valeurs de la colonne `first_name` du tableau `employees` sont converties en majuscules, et le résultat est aliasé `uppercase_name`.

3. Utilisation de UPPER() avec la clause WHERE

sql
SELECT * 
FROM customers
WHERE UPPER(country) = 'CANADA';

Dans cet exemple, la fonction `UPPER()` convertit les valeurs de la colonne `country` en majuscules pour effectuer une comparaison insensible à la casse avec la chaîne de caractères `'CANADA'`.

4. Utilisation de UPPER() dans une condition JOIN

sql
SELECT a.id, a.name, b.category
FROM products a
JOIN categories b ON UPPER(a.category_name) = UPPER(b.category_name);

Cet exemple démontre l'utilisation de `UPPER()` dans une condition `JOIN` pour s'assurer que les noms de catégories sont comparés sans tenir compte de la casse dans les deux tableaux.

Conseils et bonnes pratiques

  • Comparaison cohérente. Utilisez `UPPER()` pour standardiser les données texte pour les comparaisons insensibles à la casse dans les clauses `WHERE`.
  • Évitez les conversions inutiles. N'appliquez `UPPER()` que lorsque c'est nécessaire pour éviter une surcharge de calcul.
  • Considération de l'index. Soyez conscient que l'application de `UPPER()` à des colonnes indexées peut affecter les performances, car elle peut empêcher MySQL d'utiliser l'index de manière efficace. Envisagez d'utiliser des colonnes générées à des fins d'indexation si une conversion cohérente des cas est nécessaire.
  • Utilisez des pseudonymes pour plus de clarté. Lors de la conversion de données en colonnes, utilisez des alias de colonnes pour indiquer clairement le but des données transformées.

Fonctions connexes

Pour comprendre comment `UPPER()` s'insère dans les fonctions de chaînes de MySQL, voyez aussi la fonction `LOWER()` pour convertir les chaînes en minuscules.

Amélioration de SQL pour les débutants

Acquérir les compétences SQL pour interagir avec vos données et les interroger.
Commencez à apprendre gratuitement