🚀 Novembre a commencé ! SQLtest.online reste gratuit grâce aux dons de personnes comme vous. Aidez-nous à atteindre l'objectif de ce mois plus tôt pour que le site fonctionne sans interruption. Soutenir maintenant →
Code SQL copié dans le presse-papiers

Alias SQL : renommer des colonnes avec AS

Leçon 2.5 · Temps de lecture : ~5 min · Exercices pratiques ↓

Un alias de colonne SQL est un nom temporaire que vous donnez à une colonne dans le résultat d'une requête avec le mot-clé AS. Dans cette leçon, vous apprendrez la syntaxe des alias, comment écrire des alias contenant des espaces, pourquoi les colonnes calculées ont besoin d'alias et où un alias peut être utilisé dans une requête.

Dans les leçons précédentes, vous avez sélectionné les colonnes exactement sous le nom qu'elles portent dans la table. Les noms de colonnes sont souvent techniques, comme rental_rate ou replacement_cost, et une valeur calculée telle que length / 60 n'a pas de vrai nom. Les alias vous permettent de contrôler les en-têtes du résultat.

Alias de colonne SQL : le mot-clé AS renomme une colonne uniquement dans le résultat, alias avec espaces entre guillemets et alias pour une colonne calculée

Qu'est-ce qu'un alias de colonne ?

Un alias de colonne attribue un nom temporaire à une colonne dans le résultat d'une requête SELECT. Il ne modifie pas la colonne dans la table : l'alias n'existe que dans la sortie de cette requête.

Syntaxe de base

SELECT column_name AS alias_name
FROM table_name;

Le mot-clé AS est facultatif : SELECT column_name alias_name fonctionne aussi. Écrire AS explicitement rend la requête plus lisible, car l'alias ne ressemble pas à une seconde colonne.


Renommer une colonne

SELECT title AS film_title,
       rental_rate AS price
FROM film;

Résultat : tous les films avec deux colonnes nommées film_title et price au lieu de title et rental_rate.


Alias avec des espaces

Si un alias contient des espaces ou des caractères spéciaux, mettez-le entre guillemets doubles :

SELECT first_name AS "Given Name",
       last_name AS "Surname"
FROM actor;

Résultat : la liste des acteurs avec les en-têtes de colonnes « Given Name » et « Surname ».

Les guillemets doubles sont la norme SQL. MySQL et MariaDB acceptent aussi les accents graves (`Given Name`), et SQL Server les crochets ([Given Name]). En pratique, des noms courts sans espaces, comme given_name, sont plus faciles à réutiliser dans la requête.


Alias pour les colonnes calculées

Lorsqu'une colonne est calculée à partir d'une expression, la base de données génère un en-tête à partir du texte de l'expression, par exemple length / 60. Un alias lui donne un vrai nom :

SELECT title,
       length AS length_minutes,
       length / 60 AS length_hours,
       rental_rate * rental_duration AS full_rental_cost
FROM film;

Résultat : chaque film avec sa durée en minutes et en heures, et le coût de sa location pour toute la période.

Les colonnes calculées sont la raison la plus fréquente d'utiliser des alias : sans eux, le résultat est difficile à lire, et les applications qui lisent le résultat par nom de colonne ne trouvent pas la valeur.


Où peut-on utiliser un alias ?

Un alias est créé dans la liste SELECT, il n'est donc disponible que dans les parties de la requête traitées après SELECT :

ClausePeut utiliser un alias de colonne ?
ORDER BYOui, dans tous les principaux SGBD
WHERENon : WHERE est traité avant SELECT
GROUP BY, HAVINGDépend du SGBD (MySQL et PostgreSQL l'autorisent dans GROUP BY)
SELECT title, rental_rate * rental_duration AS full_rental_cost
FROM film
ORDER BY full_rental_cost DESC;

Résultat : les films triés de la location complète la plus chère à la moins chère.

Si une requête doit fonctionner sur plusieurs SGBD, répétez l'expression au lieu de l'alias dans WHERE, GROUP BY et HAVING. Vous en saurez plus sur l'ordre de traitement dans la leçon 2.7.


Points clés :

  • Un alias de colonne est un nom temporaire de la colonne dans le résultat ; la table ne change pas.
  • Écrivez les alias avec AS : SELECT title AS film_title. Le mot-clé est facultatif mais améliore la lisibilité.
  • Mettez les alias contenant des espaces entre guillemets doubles : AS "Given Name".
  • Donnez un alias à chaque colonne calculée.
  • Un alias peut être utilisé dans ORDER BY, mais pas dans WHERE.

Questions fréquentes

Le mot-clé AS est-il obligatoire pour un alias en SQL ?

Non. SELECT title film_title fonctionne comme SELECT title AS film_title. Il est recommandé d'utiliser AS, car il montre clairement où se termine la colonne et où commence l'alias.

Pourquoi ne peut-on pas utiliser un alias de colonne dans WHERE ?

WHERE est traité avant SELECT, donc l'alias n'existe pas encore au moment du filtrage des lignes. Répétez l'expression dans WHERE ou utilisez l'alias dans ORDER BY, qui est traité après SELECT.

Un alias renomme-t-il la colonne dans la table ?

Non. Un alias n'affecte que le résultat de la requête en cours. Pour renommer la colonne dans la table elle-même, utilisez ALTER TABLE ... RENAME COLUMN.

Essayez de resoudre les exercices suivants pour consolider ce que vous avez appris dans cette lecon.

  1. Qu'est-ce qu'un alias en SQL ?
  2. Des alias qui cassent la requête